0

すべての Web ページに ajax をロードしましたが、ロードしたページから POST データを含める方法がわかりません。目標は、登録フォームを作成し、そのデータを別の php ファイルに投稿して、そこで処理することです。

ajaxloader.js

$(document).ready(function(){
    checkURL();
    $('ul li a').click(function (e){

            checkURL(this.hash);

    }); 

    setInterval("checkURL()",250);
    loadPage('#Home');
});

var lasturl="";

function checkURL(hash)
{
    if(!hash) hash=window.location.hash;

    if(hash != lasturl)
    {
        lasturl=hash;
        loadPage(hash);
    }
}


function loadPage(url)
{
    url=url.replace('#','');

    $.ajax({
        type: "POST",
        url: "load_page.php",
        data: 'page='+url,
        success: function(msg){

            if(parseInt(msg)!=0)
            {
                $('#pageContent').html(msg);
            }
        }

    });

}

load_page.php

if(!$_POST['page']) die("0");

$page = $_POST['page'];

if(file_exists($page.'.php'))
echo include($page.'.php');

else echo 'There is no such page!';
?>

何か案は?

4

1 に答える 1

0

したがって、load_page.php は次のようになります

if(!$_POST['page']) die("0");

$page = $_POST['page'];
ob_start();

if(file_exists($page.'.php'))
include($page.'.php');
else echo 'There is no such page!';

$content = ob_get_clean();
echo $content;

これでうまくいくはずです。ただし、そのようにウェブサイト全体を渡すことはできません。base64_encode() を実行して、すべてが正常であることを確認する必要があります。そして、これを見てください http://phpjs.org/functions/base64_decode/

于 2013-01-23T21:02:25.663 に答える