データベースでクエリを実行したい:
$query="SELECT field1 from table_name where field2 like '%".$_REQUEST['var1']."%'";
ページに500 内部サーバー エラーが表示されています。
デバッグ時に$queryをエコーします。それは次のようでした:
SELECT field1 from table_name where field2 like 'value_of_var1%'
最初のパーセント記号はどこに消えましたか? インターネットで検索したところ、パーセント記号をエスケープするには二重パーセント記号 (%%) を入力する必要があるとのことでした。もしそうなら、なぜ 2 番目のパーセント記号をエスケープする必要がないのでしょうか?
このコード (クエリ) は AJAX ページで実行されています。デバッグするために、その AJAX ページを URL 経由で開きました。完璧な結果を示しています
SELECT field1 from table_name where field2 like '%value_of_var1%'
しかし、ページが AJAX 経由で呼び出されると、最初のパーセント記号なしで表示されます。本当に問題が何であるかを理解するのを手伝ってくれませんか?