私は PDO コードを書くのが初めてで、Web サイトのコードを mysql から PDO に転送しようとしています。値のバインドに関する多くのチュートリアルを読みましたが、すべての値は配列または安定した値から取得され、PDO では mysql_real_escape_string が引用符に置き換えられていることにも気付きました。
mysql から PDO にコードを書き直していたときに、$_REQUEST['id'] の値をバインドしようとしたところ、コードは null 値を返しました。
$cat_id=$DB->quote($_REQUEST['id']);
$sql_cat='select * from '.$prev.'team where id = ? ';
$re_cat=$DB->prepare($sql_cat);
$re_cat->bindValue(1, $cat_id);
$re_cat->execute();
$d_cat=$re_cat->fetch(PDO::FETCH_ASSOC);
$cat_name=$d_cat['title'];
$league = $d_cat['leagueID'];
echo $cat_name;
ここでの問題は、$_REQUEST から引用符を削除し、bindValue だけを削除した場合、SQL インジェクションから十分に保護されるでしょうか?