準備済みステートメントを使用するようにいくつかのコードを更新しようとしましたが、機能させることができませんでした。私が読んだドキュメントと例によると、SELECT ステートメントの各フィールドは個別にバインドする必要があるようです。
ユーザー入力に基づいてクエリを作成していますが、コードで準備済みステートメントを使用できるかどうか、またはスクリプトを書き直す必要があるかどうかがわかりません。基本的に、この状況で従うべき例を探しています。
私が持っている簡略化されたコードは次のとおりです。
$db = mysqli_connect("ip_address", "my_login", "my_pw", "my_db");
if (!$db) {
die('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
$query = "SELECT * FROM tbl_name WHERE 1=1";
if ($_POST[id] != '') {
$query = $query. " AND id LIKE '%$_POST[id]%'";
}
if ($_POST[date] != '') {
$query = $query. " AND bdate LIKE '%$_POST[date]%'";
}
if ($_POST[name] != '') {
$query = $query. " AND name LIKE '%$_POST[name]%'";
}
if ($_POST[address] != '') {
$query = $query. " AND address LIKE '%$_POST[address]%'";
}
$query = $query. " ORDER BY id, bdate DESC";
$results = mysqli_query($db, $query);
echo $query;
}
前もって感謝します