0

page2で htmlspecialchars を使用$_GET['search']しますか? 変数$_GET['search']に追加する前に、page3から htmlspecialchars を削除する必要はありませんか? mysql_real_escape_stringもしそうなら..どうすればhtmlspecialcharsを削除できますか?

ページ1

 $searchterm = "test"; //users search term
echo "<a href='page2?seach=test'>test</test>";

ページ2

$var = htmlspecialchars($_GET['search']);
<form action='page3' method='post'><input type='text' name='test' value='$var' /><input type='submit' value='submit'/></form>

ページ3

$search = mysql_real_escape_string($_POST['test']);
//insert into mysql database
4

1 に答える 1

2

page2で htmlspecialchars を使用$_GET['search']しますか?

テキストがあり、それをHTMLとして出力しようとしhtmlspecialcharsているときに使用します。

それがあなたの2番目の例であなたがしていることです。

$_GET['search']page3から htmlspecialchars を削除する必要はありませんか?

いいえ。HTML はブラウザによって解析され、テキスト値が生成されます。

(これは、ブラウザーが HTML セーフ データを送信しないことも意味します。そのため、データベースからデータを取り出すhtmlspecialcharsときは、HTML ドキュメントに出力する前に使用します)。

mysql_real_escape_string変数に追加する前に

使用しないでくださいmysql_real_escape_string準備されたステートメントとパラメーター化されたクエリを使用してください

于 2012-07-02T11:25:42.440 に答える