PHPでDBにデータを入力する(Cloud9)
前回PHPでDBに接続することができたので、今回はDBにデータを入力してみます。
最終的にはCSVをアップしてDBを更新するようなシステムを考えているので、以下を参考にしました。
【PHP】 CSVをいい感じにインポートする方法を紹介します
最初いきなりCSVつっこんでたんですが、動かないので単純にidというテーブルに値を突っ込むものに変更しました。それが以下。
<?php
$servername = getenv('IP');
$username = getenv('C9_USER');
$password = "";
$database = "testdb";
$dbport = 3306;
// Create connection
$db = new mysqli($servername, $username, $password, $database, $dbport);
// Check connection
if ($db->connect_error) {
die("Connection failed: " . $db->connect_error);
}
echo "Connected successfully (".$db->host_info.")";
//MySQL Command 送信
$sql_insert = "INSERT INTO testdb.main (id) VALUES (9999);";
$result = mysql_query($sql_insert);
?>
それでも以下のエラーが出ます。
Warning: mysql_query() [function.mysql-query]: Access denied for user ''@'localhost' (using password: NO)
エラーとかでググったら同志が見つかりました。
回答者が以下のようなことを言っているので、従います。
$records = mysql_query($sql); should be replaced with $records = $db->query($sql); or even $records = mysqli_query($db, $sql);
//MySQL Command 送信 改訂版
$sql_insert = "INSERT INTO testdb.main (id) VALUES (9999);";
$result = mysqli_query($db,$sql_insert);
無事DBが更新されましたよ。
+------+
| id |
+------+
| 9999 |
+------+