0

Web サイトのフレームで動作する小さな html ファイルがあります。現在、郵便番号を要求してから、php ページを呼び出してデータベースにクエリを実行します。iframe は、親ページから ID 番号を取得し、独自のページから郵便番号を取得します。これがコードスニペットです。

<script>
pid = window.location.search;
pid = pid.substring(11,16)
htmlout = '<input type = "hidden" name = "productid" id = "productid" value = "' + pid + '">';
</script>
<body style="margin: 0px; background-color: #ECECEC;">

<form action="https://www.net10wirelessphones.com/Mini-zip-Lookup.html" style="text-align: left" method = "get">
<script>
document.write(htmlout);
</script><span style="font-size: 9pt"><span style="font-family: Arial, Helvetica, sans-serif; color: #444444">Verify coverage in your area. Enter your Zip Code: 
</span>&nbsp;     
</span>
<input name="zip" size="5" type="text" />
<input type="submit" value="GO" />&nbsp;</form>

ただし、郵便番号 00631 を入力すると、サイト http://www.net10wirelessphones.com/Mini-zip-Lookup.html?zip=00631にしか移動しません。

フォームから隠された価値を切り捨てているようです。私が間違っているかもしれないことについて何か提案はありますか?

編集: 試してみたい方は、郵便番号 00631 と製品 ID 17637 で試してください。このオプションを受け入れて、zipsuccess ページに移動する必要があります。

編集: また、最初から見たい場合は、ページhttps://www.net10wirelessphones.com/zipstart.html?productid=17637にアクセスしてください。申し訳ありませんが、それを試している人のために含めるのを忘れていました.

4

4 に答える 4

1

その必要はありません。これはより良い代替手段です

<script>
pid = window.location.search;
pid = pid.substring(11,16)

//here is the changes
document.getElementById("productid").value = pid;
</script>

<form action="https://www.net10wirelessphones.com/Mini-zip-Lookup.html" style="text-align: left" method = "get">
<input type = "hidden" name = "productid" id = "productid" value = "" />

<span style="font-size: 9pt"><span style="font-family: Arial, Helvetica, sans-serif; color: #444444">Verify coverage in your area. Enter your Zip Code: 
</span>&nbsp;     
</span>
<input name="zip" size="5" type="text" />
<input type="submit" value="GO" />&nbsp;</form>
于 2012-12-17T01:27:33.940 に答える
0

productidページに GET パラメータとして手動で指定しましたzipfail.html。非表示の入力フィールドに値を入れています。こちらも無傷で合格Mini-zip-lookup.htmlです。次のいずれかのようです。

  1. productidフレームの URL にを提供していません。
  2. または、そのページの関連コードが異なるzipfail.html

iframe の URL が?productid=?<number>末尾にあることを確認してください。

于 2012-12-17T01:47:52.503 に答える
0

プログラムを動作させました。問題は、このページに送信された別のフォームにあることがわかりました。name 属性を少し変更する必要がありました。

これ:

<input name="id" id="productid" type="hidden" value="" />

変更:

 <input name="productid" type="hidden" id="productid" value="" />

そして、それはうまくいきました。助けてくれてありがとう!

于 2012-12-17T03:03:10.977 に答える
0

私は非常によく似た問題を抱えていて、上記のように名前を変更するとそれが修正されました...ある程度。実際に何が問題だったのかを含めると役立つかもしれないと思いました。変数を逆に設定していました。$_POST毎回空白の値で変数をリセットしていました。値を配列に追加しようとし$_POSTていたので、次のようになりました。

$_POST['varname'] = $my_array['varname'];

それを次のように変更したら:

$my_array['varname'] = $_POST['varname'];

それは完璧に機能しました。このばかげた間違いをじっと見つめている私の時間が、他の誰かが同じことをするのを防ぐことを願っています.

于 2013-03-28T21:34:16.447 に答える