私は記事名をとる隠れた入力を持っています。タイトルに "&"というシンボルがあります。AJAXの問題で文字列に&記号が含まれています。
<input name="art" type="hidden" id="art" value="<?php echo $rew['art']; ?>"/>
私のフォームを送信すると、$ _POSTは完全な記事タイトルを登録しません。それは、&があった時点までしか残り、残りは空白です。
私はこれが欲しいです: "これは&でした。"
しかし、私は「これは」です。
フォームを送信すると、「&」のシンボルと残りのコンテキストが表示されるようにするにはどうすればよいですか。
私もデータベース内で検索しています。あなたは、下のコメント欄での議論をもとに
<input name="art" type="hidden" id="art" value="<?php echo htmlspecialchars($rew['art']); ?>"/>
:今私の問題は、あなたがhtmlspecialchars
機能を経由してHTMLエンティティをエスケープする必要があり、「&」
で
&
を置き換えることができます:あなたはencodeURIComponent
機能をJavaScriptでこれを行うことができます。その件についていくつか読んでいます:http://blog.astrumfutura.com/2012/03/a-hitchhikers-guide-to-cross-site-scripting-xss-in-php-part-1-how-not-to -use-htmlspecialchars-for-output-escaping/ –私はそれを試みました。それはうまくいかないでしょう。 &のフォーマットであっても&のような形をしているので、フォームはそのシンボルを登録したくないだけです。それはアヤックスのフォームなので可能ですか? – Brian
それは非常に奇妙です。 'htmlspecialchars'を使ってこのフォームを投稿したときに' print_r($ _ POST) 'の出力を投稿できますか? – Brandan