一部のテーブルのフィールド変数を更新する ajax 関数を作成したいと思います。テーブル、フィールド、および行はすべて可変であり、ajax 関数を介して投稿された内容に基づいています。
これは私のquickedit.phpのコードです
define( "DB_DSN", "mysql:host=$host;dbname=$data" );
define( "DB_USERNAME", $user );
define( "DB_PASSWORD", $pass );
if(isset($_POST['table'])){ $table = $_POST['table'];}
if(isset($_POST['id'])){ $id = $_POST['id'];}
if(isset($_POST['field'])){ $field = $_POST['field'];}
if(isset($_POST['value'])){ $value = $_POST['value'];}
try {
$con = new PDO( DB_DSN, DB_USERNAME, DB_PASSWORD );
} catch (Exception $e) {
die("Connection Error");
}
try {
$st = $con->prepare("UPDATE :table SET :field = :value WHERE id = :id");
$st->execute(array(':table'=>$table, ':id'=>$id, ':field'=>$field, ':value'=>$value));
} catch (Exception $e) {
die("Query Error");
}
echo "table: ".$table." id: ".$id." field: ".$field." value: ".$value;
ご覧のとおり、テーブル、列、および行を動的に選択したいと考えています。
例外についてはよくわかりませんが、どれもスローされておらず、一番下にあるものを正常にエコーしています。