私はどこに失敗があるのかわからない、奇妙なことがあります。Wordpress get_resultsは "&"記号を解析しています
$name = "Fast & Furious 8";
$res1 = $wpdb->prepare(
"
SELECT
*
FROM
wp_dbtable
WHERE
filmname = '%s'
LIMIT 1
",
$name
);
$res = $wpdb->get_results($res1);
foreach($res as $reseachG) {
}
私は記号&
に問題があります。何らかの理由で、たとえそれを行うべきであっても、テーブルから何かを引き出すことはありません。
私はこのように、代わりに変数のテキスト、それが自己を使用している場合:
$res1 = $wpdb->prepare(
"
SELECT
*
FROM
wp_dbtable
WHERE
filmname = '%s'
LIMIT 1
",
"Fast & Furious 8"
);
それが動作します。また、変数内の他のテキストもうまく機能します。
したがって、prepare
またはget_results
はこのシンボルを受け入れない、または変更するようです。どうすれば解決できますか?私はインターネット上でヒントを見つけることができませんでした。
PHP
-問題またはMy-SQL
-問題がWordPressクラスの問題である可能性があります。
ありがとうございます。
'echo"
";'の出力は何ですか?さらに、あなたのクエリには ''%s' 'があります。あなたはそれを必要としません。 '%s'は自動的に変数名を引用符で囲みます。 –カスタムテーブルに 'Fast&Furious 8'というエントリを追加しました。最初のコードを実行してその文字列を見つけても問題はありませんでした。 – RRikesh
@MerianosNikos the Outpuは: SELECT * FROM wp_dbtable WHERE filmname = 'Fast&Furious 8' LIMIT 1 –