「PHP」MySQLiで接続・検索・追加・更新処理のコードテンプレート

2019年6月12日PHP

MySQLiで接続・検索・追加・更新処理のコードテンプレート

PHPによるMySQLi操作での接続・検索・追加・更新のコードのテンプレート集です

データベース接続と切断と文字セット

//データベース接続
$mysqli = new mysqli('ホスト名', 'ユーザー名', 'パスワード', 'データベース名');
if ($mysqli->connect_error) {error_log($mysqli->connect_error);exit;}

//デフォルト文字セットを設定
$mysqli->set_charset("utf8");

//データベース切断
mysqli_close($mysqli);

エックスサーバーでのホスト名・ユーザー名・パスワード・データベース名の確認

ホスト名MySQL一覧、画面下部abcdefg.xserver.jp
ユーザー名MySQLユーザ一覧サーバーid_xxxxxx
パスワードMySQLユーザ一覧よりMySQLユーザ毎
データベース名MySQL一覧サーバーid_xxxxxx

 

データを全て取得

//データベース取得
$str_sql = "select * from `テーブル名`";
$res = $mysqli->query($str_sql);
if (!$res) {error_log($mysqli->error);exit;}
while($dat = $res->fetch_assoc()){
}

ソートしてデータを取得

//データベース取得
$str_sql = "select * from `テーブル名` ORDER BY `xxx`";
$res = $mysqli->query($str_sql);
if (!$res) {error_log($mysqli->error);exit;}
while($dat = $res->fetch_assoc()){
}

逆順ソートしてデータを取得

//データベース取得
$str_sql = "select * from `テーブル名` ORDER BY `xxx` DESC";
$res = $mysqli->query($str_sql);
if (!$res) {error_log($mysqli->error);exit;}
while($dat = $res->fetch_assoc()){
}

取得件数を指定してデータを取得

//データベース取得
$str_sql = "select * from `テーブル名` LIMIT 10";
$res = $mysqli->query($str_sql);
if (!$res) {error_log($mysqli->error);exit;}
while($dat = $res->fetch_assoc()){
}

取得件数の範囲を指定してデータを取得

//データベース取得
$str_sql = "select * from `テーブル名` LIMIT 11,20";
$res = $mysqli->query($str_sql);
if (!$res) {error_log($mysqli->error);exit;}
while($dat = $res->fetch_assoc()){
}

検索で条件に一致するデータを取得

//データベース検索
$str_sql = "select * from `テーブル名` where `カラム名` = 'xxx'";
$res = $mysqli->query($str_sql);
if (!$res) {error_log($mysqli->error);exit;}
while($dat = $res->fetch_assoc()){
}

部分一致検索で条件に一致するデータを取得

//データベース検索
$str_sql = "select * from `テーブル名` where `カラム名` LIKE '%xxx%'";
$res = $mysqli->query($str_sql);
if (!$res) {error_log($mysqli->error);exit;}
while($dat = $res->fetch_assoc()){
}

必要なカラムのみを指定して取得する

//データベース取得
$str_sql = "select id,name from `テーブル名`";
$res = $mysqli->query($str_sql);
if (!$res) {error_log($mysqli->error);exit;}
while($dat = $res->fetch_assoc()){
}

不要なデータを取得しなくなる分、軽量化

データ件数を取得する

//データベース取得
$str_sql = "select * from `テーブル名`";
$res = $mysqli->query($str_sql);
if (!$res) {error_log($mysqli->error);exit;}
//結果件数を取得
$count = mysqli_num_rows($res);

データの追加

//データの追加
$str_sql = "INSERT INTO `テーブル名` (カラム名1,カラム名2,カラム名3) VALUES ('データ1','データ2','データ3')";
$res = $mysqli->query($str_sql);
if (!$res) {error_log($mysqli->error);exit;}

最後に追加したidを取得

//最後に追加したidを取得
$insert_id = mysqli_insert_id($mysqli);

データの更新

//データの更新
$str_sql = "UPDATE テーブル名 SET カラム名1 = 'データ1',カラム名2 = 'データ2',カラム名3 = 'データ3' WHERE id = 'xxx'";
$res = $mysqli->query($str_sql);
if (!$res) {error_log($mysqli->error);exit;}

2019年6月12日PHP

Posted by Yousuke.U