【PHP PDO】純PHP(フレームワークを使用しない)でのMysql PDOの使用方法の表記
1構成情報
データベース・リンク、ユーザー名、パスワード、ライブラリ、dns情報(データベース名、データベース・リンクip、文字セットを含む)を個別に構成します.
注意:文字セットを設定しない場合、utf 8が設定されている場合でも、データベースに格納された中国語データが文字化けしている可能性があります(コード、データベース設定、データベースリンクを保持する必要がある場合の文字セットはutf 8のままです).
2リンクデータベース
3.1クエリー
3.2更新
3.3挿入
$config = array(
'db' => array(
'host' => '127.0.0.1',
'user' => 'root',
'pass' => '',
'db' => 'test_db',
'dns' => 'mysql:dbname=test_db;host=127.0.0.1;charset=utf8'
)
)
データベース・リンク、ユーザー名、パスワード、ライブラリ、dns情報(データベース名、データベース・リンクip、文字セットを含む)を個別に構成します.
注意:文字セットを設定しない場合、utf 8が設定されている場合でも、データベースに格納された中国語データが文字化けしている可能性があります(コード、データベース設定、データベースリンクを保持する必要がある場合の文字セットはutf 8のままです).
2リンクデータベース
try {
$db = new PDO($config['db']['dns'], $config['db']['user'], $config['db']['pass']);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
exit;
}
3.1クエリー
//
$sql1 = "SELECT * FROM tbl_test1 WHERE condition1 = :condition1 and condition2 = :condition2";
$sql_data1 = Array(
":condition1" => 1,
":condition2" => "abc"
);
$sth1 = $db->prepare($sql1);
$sth1->execute($sql_data1);
//
$result1 = $sth1->fetch(PDO::FETCH_ASSOC);
//
// $result1 = $sth1->fetchAll(PDO::FETCH_ASSOC);
//
if($result1){
//
}else{
//
}
3.2更新
//
$sql2 = "UPDATE tbl_test1 SET `key1` = :val1, `key2` = :val2 WHERE condition1 = :condition1 and condition2 = :condition2";
$sql_data2 = Array(
":val1" => 1,
":val2" => "hello",
":condition1" => 1,
":condition2" => "abc"
);
$sth2 = $db->prepare($sql2);
$sth2->execute($sql_data2);
//
if($sth2->rowCount() >0){
//
}else{
//
}
3.3挿入
//
$sql3 = "INSERT INTO tbl_test1 (`key1`,`key2`,`key3`,`key4`,`key5`) VALUES ( :val1 , :val2 , :val3 , :val4 , :val5 )";
$sql_data3 = Array(
"val1" => 1,
"val2" => "hello",
"val3" => 100.25,
"val4" => " "
"val5" => "2015-10-30"
);
$sth3 = $db->prepare($sql3);
$result3 = $sth3->execute($sql_data3);
//
if($result3){
//
// id
// $db->lastInsertId();
}else{
//
}