0

簡単に言えば...

これは、属性を設定したい html タグです。

echo "<input type='text' name='name' value='".$phpvar."'>";

$phpvar には、任意のテキストと記号 (引用符と二重引用符を含む) を含めることができます

文字列を正しくエスケープ/変換して正しく表示するにはどうすればよいですか?

みんなありがとう!

編集 私を助けてくれてありがとう!わかりました、他の誰かがこれで立ち往生している場合、これで私の問題は解決しました:

  1. 属性の値を二重引用符 (") で囲みます。HTML には二重 (") のエンティティ コードしかなく、単一 (') のようにバグが発生しないためです。
  2. 文字列を htmlentities() または htmlspecialchars() で変換/エンコードします。
4

4 に答える 4

0

変数から削除したい特殊文字がわかりません。引用符について述べたように、次のコードは文字列から一重引用符と二重引用符を削除します。

<?php    
$quotes = array('"', "'");

echo str_replace($quotes, "", "Hello Wor'l'd of PHP");
于 2013-11-11T06:48:32.853 に答える
0

htmlentitiesはこの種のもののために作られています。

$phpvar= '"&#test"';
echo '<input type="text" name="name" value="'.htmlentities($phpvar).'">';

出力します

<input type='text' name='name' value='&quot;&amp;#test&quot;'>

テキスト フィールドが表示されます"&#test"

于 2013-11-11T06:48:52.863 に答える
0

&値を php ファイルに送信するには、 、"'、およびブラウザによって認識されないその他の多くの記号などの文字をエンコードする必要があります。

これを行うにはurlencode()、これらのシンボルをレンダリング可能な html シンボル エンティティに変換するために使用できます。

これがどのように見えるかです。

echo "<input type='text' name='name' value='".urlencode($phpvar)."'>";

これは、あなたを助けるスタックオーバーフローに関するいくつかの役立つ質問です。

urlencode を使用する必要があるのはなぜですか?

AJAX + PHP 自己生成フィールドで空白の結果が生成される

頑張って!

于 2013-11-11T06:44:15.990 に答える
0

strip_tags()またはurlencode()またはを使用できますhtmlspecialchars()

または、 $phpvar の値に一重引用符のみが含まれている場合は、echo ステートメントを変更して、二重引用符を使用することをお勧めします

echo '<input type="text" name="name" value="$phpvar">';

于 2013-11-11T06:44:29.507 に答える