PHPのバージョンが5.x系になり
MySQL関数をオブジェクト化した
クラス[MySQLi]が新たに追加されました。
更にバージョンが5.5.x系以降のバージョンに関しては
[mysql_]系の関数が非推奨にまでなってしましいましたので、
今のうちにクラス[MySQLi]の使い方をメモしておきます。
今回はINSERT文のみです。
ソースコード
<?php # No. 01 $mysqli = new mysqli( "localhost" , "testuser" , "testpw" , "testdb" ); # No. 02 if( $mysqli->connect_errno ) { echo 'データベースアクセスエラー'; exit; } # No. 03 $query = "INSERT INTO testtb ( no , value , createdate ) VALUES ( 1 , "test" , NOW() )"; # No. 04 if( $mysqli->query( $query ) ) { echo 'INSERT成功'; } else { echo 'INSERT失敗'; } $mysqli->close(); ?>
解説
# No. 01
クラス[MySQLi]のコンストラクタを呼び出し、
同時に特定のデータベースへ接続を開始します。
コンストラクタの引数は順番に
・対象のURL
・ログインするユーザ名
・ユーザに対するパスワード
・対象のデータベース名
です。
# No. 02
No.01の動作に失敗(データベースに接続できない)場合は
変数(インスタンス)[$mysqli]のローカル変数[connect_errno]に
特定の値が入力されますので、NULL判定を利用して
データベースの接続状況を確認します。
# No. 03
INSERTクエリ文を作成しています。
# No. 04
INSERT文は結果セットを返さないので
クエリの成否判定はTRUEかFALSEを返します。
次回は結果セットを返す
SELECT文あたりの記事を書きたいとおもいます。
Pingback: [PHP]MySQLiの使用方法(SELECT文) — プログラム・メモ
Pingback: [PHP]MySQLiの使用方法(文字コードの変更) — プログラム・メモ