2

正確な問題: URL から検索ボックスの宛先ページにパラメーターを渡そうとしています。

パラメータは次のように「subid」です。

http://www.domain.com/?subid=3456

およびphpの現在の(機能していない)検索フォームコード:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<form action="http://search.yahoo.com/search?subid=<?php print $_GET['subid'];?>&" target="_blank" id="search-box">
  <input type="text" name="p" size="31" />
  <input type="submit" value="Search" />
</form>

</body>
</html>

ここに行くと、サブIDがフォームアクションにあることがfirebugでわかります。

http://www.domain.com/?subid=3456

しかし、フォームでクエリを実行すると、yahoo に渡されません。

それで、どこに問題がありますか?

4

2 に答える 2

4

subidパラメータとしても投稿し、メソッドを として指定する必要がありますget

<form action="http://search.yahoo.com/search" target="_blank" method="get" id="search-box">
  <input type="hidden" name="subid" value="<?php print $_GET['subid'];?>" />
  <input type="text" name="p" size="31" />
  <input type="submit" value="Search" />
</form>
于 2013-05-16T15:52:09.797 に答える
0

作成者からの依頼に応じて、GET パラメータのフィルタリングを追加しました。

<form action="http://search.yahoo.com/search" target="_blank" method="get" id="search-box">
  <input type="hidden" name="subid" value="<?=(int)$_GET['subid']?>" />
  <input type="text" name="p" size="31" />
  <input type="submit" value="Search" />
</form>

strip_tagsまたは、出力の前に+htmlentities関数を使用できます。

于 2013-05-23T18:51:05.113 に答える