2012-02-12 59 views
0

我在後端頁面(thread.php)基本上返回值dateposted和當前時間之間的時間週期做一些處理。 前端頁(的index.php)發送具有用於dateposted值來thread.php的請求。 thread.php頁面接受dateposted並相應地返回值。然後,index.php將使用返回值的最後一個值,並將dateposted設置爲該值,該值再次按請求發送。所以這是一個循環。但是,我正面臨着從index.php發送值「dateposted」到thread.php的問題。通過Ajax和返回值發送的PHP變量,如果成功

$dateposted = '1328098097623'; 
<script language="JavaScript"> 
var dateposted = <?php echo $dateposted ?>; 
     function returnValue() 
    { 
    $.ajax({ 
       async: true, 
       type: "GET", 
       url: "thread.php", 
       data: {lastposted : dateposted}, 
       success: function (html) { 
        if(html) 
        { 
         var newDiv = $('<div/>').html(html); 
         $('#chatContents').append(newDiv);    
        } 
       } 
      }); 
    } 
</script> 

這是我在thread.php接受可變過去了。

if(!isset($lastpost)){ 
$lastpost = 0; 
}else{ 
    $lastpost = $_REQUEST["lastposted"]; 
    } 

基本上我現在硬編碼「dateposted」。我不知道如何通過ajax將php變量傳遞給另一個頁面。在此先感謝

+0

什麼是與當前腳本發生對象?問題是什麼? – nand 2012-02-12 19:01:54

+0

數據不會被髮送過來。我不確定是否這樣,我應該通過ajax發送數據到另一個頁面。 – 2012-02-12 19:09:16

回答

1

隨着快看,我給它,我建議你先說唱音樂與引號「」你的PHP回聲可變..

var dateposted = <?php echo "$dateposted" ?>; 

這是讓你的JavaScript語法正確。第二更換功能(HTML)的功能(數據)..因爲那是你想發送和改變你的類型POST。去年在你的PHP腳本改變這樣

if(!isset($_POST['lastposted'])){ $lastpost = false; }else{$lastpost=$_POST['lastposted'];} 
+0

用引號環繞 - 的確如此。如果OP使用Firefox + Firebug,或者開啓了開發者欄的Chrome,那麼這個語法錯誤就會立即清除。 – halfer 2012-02-12 19:38:32

+0

或者你總是可以添加一個'alert(「它有效)」;'測試你的新功能,讓你知道你的javascipt的作品。 – Alexander 2012-02-12 19:48:21

+0

不能相信我忽略了這一點。包裝在引號的文本,並將其轉變爲,如果(!isset($ _ GET [「lastposted」])而形成差異 – 2012-02-12 19:51:19

0

你需要「回聲」的$ lastpost在腳本結束阿賈克斯(thread.php)被調用。你還需要檢查是否isset($ _ GET [ 'lastpost'])或$ _ POST [ 'lastpost']。在你的情況下,應該得到:

if(!isset($_GET['lastposted'])){ 
$lastpost = 0; 
}else{ 
    $lastpost = $_GET["lastposted"]; 
    } 
echo $lastpost; 

你的變量也不匹配 - 檢查if isset和賦值的拼寫。

+0

Echo顯示0,表示該變量沒有被傳遞。 – 2012-02-12 19:32:24

+0

我以前使用過Request。這兩個請求中沒有任何一個請求? – 2012-02-12 19:52:15

+0

請求會照顧這兩個的,但你不檢查的,如果(!isset()函數)子句中的請求。 – hgolov 2012-02-14 07:01:22