PHPからMySQLにPDOを使って、DBへデータ登録(INSERT)する方法です。
PDOの使い方について詳しく知りたい方は次の記事をご覧ください。
INSERT文の書き方
データを登録するには「INSERT文」を使用します。
INSERT INTO テーブル名 (カラム名1, カラム名2, ・・・) VALUES (値1, 値2, ・・・);
今回は次のINSERT文をPHPで実行していきます。
INSERT INTO users (id, name, address, tel) VALUES(3, '山田次郎', '神奈川県', '045-000-0000');
PHPでデータ登録する書き方
MySQLのtestdbデータベースに対して、先ほどのINSERT文を実行していきます。
SQLインジェクション対策として、値セットは「$stmt->bindValue」を使用しています。
<?php try { // DB接続 $pdo = new PDO( // ホスト名、データベース名 'mysql:host=localhost;dbname=testdb;', // ユーザー名 'root', // パスワード '', // レコード列名をキーとして取得させる [PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC] ); // SQL文をセット $stmt = $pdo->prepare('INSERT INTO users (id, name, address, tel) VALUES(:id, :name, :address, :tel)'); // 値をセット $stmt->bindValue(':id', 3); $stmt->bindValue(':name', '山田次郎'); $stmt->bindValue(':address', '神奈川県'); $stmt->bindValue(':tel', '045-000-0000'); // SQL実行 $stmt->execute(); } catch (PDOException $e) { // エラー発生 echo $e->getMessage(); } finally { // DB接続を閉じる $pdo = null; } ?>
以上です。