0

ウェブサイトのメイン セクションに (jquery 経由で) PHP ページをロードしようとしています。ロードしようとしている php ページは、メイン ページから変数を共有する必要があります。メインページのコード行は次のとおりです。

<div id="main" role="main">
<? $path=pathinfo($_SERVER['PHP_SELF']);$path="photo_store/".$path['filename']."/*"; ?>
</div>

このメイン ページの head セクションでは、2 番目の php ファイルのみを投稿する js ファイルが呼び出されます。js ファイル内のコードは次のとおりです。

$(function() {$.post("images.php",function(data){$('#main').html(data);});});

2 番目の php ファイルは、次のコードを使用して、photo_store サブディレクトリから画像の配列を作成および表示するために使用されます。

$files = glob($path);

を調べましたが$_GET、それらがどのように機能するか完全にはわかりません。また、うまく$_POSTいき$_SESSIONませんでした。明らかに、フォルダーの場所を手動で に配置するglob()と、js ファイルを破棄して を使用する場合とまったく同じようにロードされますinclude''が、.include''オプション。

4

1 に答える 1

0

は、AJAX によってロードされる前にimages.php実行されることを理解する必要があります。つまり、AJAX を使用して変数を Web サイトに送信するか、javascript を使用して変数を処理する必要があります。(2番目のことはしたくありません) ajax POSTパラメーターの送信 - に表示されます:
$_POST

$.post(   "images.php",
          {path: "<?php echo $path;?>"},
          function(data){$('#main').html(data);});

したがって、次のようimages.phpにアクセスできます。$path

$path = $_POST["path"];

$pathajax によって送信された場合、ユーザーは を偽造できることに注意してください。彼は自分の POST リクエストをディスパッチできます。

于 2013-02-26T16:21:44.580 に答える