バンコク開発日誌

タイからは帰ってきたのにこのタイトル

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 |
+------+