0

値に引用符を付けたい非表示の入力タグがあります。値に使用できるように、引用符をエスケープするにはどうすればよいですか?

HTML

<input type="hidden" name="edited_terms" 
value="<p>\"Please enter any additional terms and conditions here.\"</p>" />

PHP

$terms = mysql_real_escape_string($terms);
echo '<input type="hidden" name="edited_terms" value="'.$terms.'" />';

一重引用符と二重引用符の両方を使用したいのですが、に設定すると一重引用符をvalue='<p>\"Please enter any additional terms and conditions here.\"</p>'使用できなくなります。

この関数htmlspecialcharsでこれを実現できますが、HTML タグが取り除かれます。たとえば、<p>に変換され&lt;p&gt;ます。<p>タグを保持し、引用符を に変換できるようにしたい&quot;

4

2 に答える 2

0

まず、HTML は MySQL ではありません。したがって、MySQL 関数はここでは役に立ちません。

htmlspecialchars次に、 HTML 属性値で使用します。

$terms = htmlspecialchars($terms);
echo '<input type="hidden" name="edited_terms" value="'.$terms.'" />';

一重引用符で囲まれた属性値には、ENT_QUOTESフラグを使用htmlspecialcharsします。

于 2013-03-19T20:18:44.873 に答える
0

このダニエルを試してください:

<input name="edited_terms" 
value="<p>&quot;Please enter any additional terms and conditions here.&quot;</p>" />

PHP を更新します。

$terms ="<p>&quot;Please enter any additional terms and conditions here.&quot;</p>";           
echo '<input type="hidden" name="edited_terms" value="'.$terms.'" />';
于 2013-03-19T20:15:12.097 に答える