「pdo」検索結果
- <<
- 1
- >>
カタログオンライン V2.2 バグ修正[edit]
2021/04/16 【コード】
cart.php 152行名を以下に修正すること
(bookmarkにNULLが入らないように、 order byでおかしくなる)
foreach ($fields_card as $field){
if ( !(preg_match('/^file_([0-9]+)/',$field))){
if (is_null($_POST[$field])){
$val ="";
} else {
$val = $_POST[$field];
}
$stmt->bindValue(':'.$field, $val, PDO::PARAM_STR);
}
}
タグ >> カタログオンライン
PHP + PDO + MySQL のトランザクション制御方法[edit]
2016/06/16 【コード】
<?php
require_once("function.php");
try{
$dbh = new PDO(DSN, USERNAME, PASSWORD);
// 静的プレースホルダを指定
$dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
// エラー発生時に例外を投げる
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//パラメータ
$id = 1;
//トランザクション処理を開始
$dbh->beginTransaction();
try {
//プリペアドステートメント / ロック
$stmt1 = $dbh->prepare("SELECT * FROM USERS WHERE ID = ? FOR UPDATE");
$stmt1->bindParam(1, $id, PDO::PARAM_INT);
$stmt1->execute();
//プリペアドステートメント
$stmt = $dbh->prepare("UPDATE USERS SET COUNT = COUNT + 1 WHERE ID = ?");
$stmt->bindParam(1, $id, PDO::PARAM_INT);
$stmt->execute();
//コミット
$dbh->commit();
}catch(PDOException $e){
//ロールバック
$dbh->rollback();
throw $e;
}
} catch(PDOException $e){
echo $e->getMessage();
}
?>
- <<
- 1
- >>


