私は1つのパラメータをバインドすると動作していたボタンを押してもSQL文を削除しようとしていますが、delete.phpを汎用的にしたいこの結合を実行PHP - 複数のbind_paramsが失敗する
<?php
include "header.php";
include "db.php";
$_POST['table'] = "customer";
$_POST['column'] = "cID";
$_POST['del_id'] = 26;
if(isset($_POST['del_id']))
{
if ($stmt = $conn->prepare("DELETE FROM customer WHERE ? = ?"))
{
$stmt->bind_param('si', $_POST['column'], $_POST['del_id']);
$stmt->execute();
}
else echo("Oops");
}
をけれども)テーブルに何もしない、唯一の最終値「del_id」を結合、正しく実行し、テーブル名を含む3つの引数を結合、ちょうど(準備原因:別のテーブルを参照します失敗する。
私はAJAX POSTから他の場所に_POST変数を設定していますが、上記はこのビットが動作するかどうかをテストするためのものです。私はまた、それが始まる前にまだ検証をやり遂げることに拍車をかけていません。
非常にPHPのnooby、おそらく単純な間違い、または私が気付いていないことです。この場合、テーブル/カラム名をパラメータ化できない理由については興味があります。私はしばらくの間、回避策として、複数の異なる場所から動的な名前をこのクエリにドロップできるようにするには、何らかの連結形式が代わりに使用されますか?あなたは準備文のための連結およびパラメータの組み合わせを持っている必要があります。この達成する
カラム名とテーブル名もバインドできません。 –