1

私が取り組んでいる3つのページがあります。

shop_mobile.php

このページでは、MySQL データベースから製品データを取得し、そのフォーマットを一覧表示します。URL パラメーター brand=BRANDNAME および cat=CATEGORY を受け入れます。

このページの実際の例を 2 つ示します:
http://solanocycle.com/shop_mobile.php?brand=KYMCO&cat=KYMCO%20Scooters

http://solanocycle.com/shop_mobile.php?brand=peacesports&cat=Peace%20Sports%20スクーター

vehicle.html

このページには、特定の製品リスト ページ (「KYMCO スクーター」、「ピース スポーツ スクーター」など) を表示するためのリンクが含まれています。これらのリンクをクリックすると、ユーザーはすべて同じページ (view.html) に移動しますが、view.html 内の Iframe にソースとして使用する URL を伝える URL パラメーターを渡す必要があります。

view.html

このページには、 vehicle.html からのリンクによって渡された URL パラメータからソースを取得する Iframe が含まれています。

ノート:

WordPress ページの iFrame に URL パラメーターを渡すにはどうすればよいですか? で提供されているソリューションを使用してみました。私の問題を解決するために、私は以前にjqueryを使用したことがなく、正しく動作させることができませんでした.

どんな助けでも大歓迎です。

より詳しい情報

Vehicles.html からのリンクのサンプル

<a href="view.html?http://solanocycle.com/shop_mobile.php?brand=KYMCO&cat=KYMCO%20Scooters">KYMCO Scooters</a>

View.html がすべきこと:

  1. view.html ? _ _ $embedLink という変数として保存します。

  2. $embedLink をソース URL として Iframe を表示します。

4

1 に答える 1

0

vehicle.html のリンクが適切に構成されていると仮定すると、次のようになります。

view.html?url=http://solanocycle.com/shop_mobile.php?brand=KYMCO&cat=KYMCO%20スクーター

view.html に必要な jQuery は次のようになります。

<script type="text/javascript">
$(document).ready(function(){
    var regex = /\?url=(.*)/,
    $embedLink = document.location.href.match(regex)[1];
    $('iframe').attr('src', $embedLink);
});
</script>

明らかに、「iframe」を iframe の ID またはクラスに置き換えて、より具体的にします。

別の方法として、php を使用してリクエスト パラメータを抽出し、iframe の src 属性の代わりにエコー アウトします。

<?php $embedLink = (isset($_GET['url']) ? $_GET['url'] : ''); ?>

<iframe src="<?php echo $embedLink; ?>"></iframe>

XSS を防ぐために、両方のケースでリクエスト パラメータのサニタイズを実行することをお勧めします。

于 2012-09-06T23:00:10.123 に答える