2011-08-22 108 views
0

我在我的一個頁面上使用了ajax來每10秒鐘自動更新自己的聊天系統。我也有一個正常的HTML表單。 ajax請求發送一個名爲chatAjax.php的文件,表單將數據發送到process.phpform&ajax腳本混淆

如果用戶在定時器啓動之前提交表單,則系統正常工作。然而,由於某些原因,如果用戶需要一段時間輸入數據,數據纔會發送,然後用戶登錄到chatAjax.php而不是返回主頁面。我不知道發生了什麼,process.php沒有提及chatAjax.php。那麼他們爲什麼最終在chatAjax.php

這裏是AJAX腳本:

function refresh(){ 
     var ajaxRequest; 

     try{ 
      // Opera 8.0+, Firefox, Safari 
      ajaxRequest = new XMLHttpRequest(); 
     } catch (e){ 
      // Internet Explorer Browsers 
      try{ 
       ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP"); 
      } catch (e) { 
       try{ 
        ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP"); 
       } catch (e){ 
        // Something went wrong 
        alert("Your browser broke!"); 
        return false; 
       } 
      } 
     } 
     ajaxRequest.onreadystatechange = function(){ 
      if(ajaxRequest.readyState == 4){ 
       document.getElementById("Chats").innerHTML= ajaxRequest.responseText; 
      } 
     } 
     ajaxRequest.open("POST", "chatAjax.php", true); 
     ajaxRequest.send(null); 
     setTimeout("refresh()",10000); 
    } 

,如果你想進一步看看剛去http://www.cogtek.co.cc/community.php(那主頁我談論)

+0

你爲什麼要發送數據到兩個不同的URL?請給我們展示一些代碼,特別是你的ajax調用 – JMax

+0

給一些代碼呢? – genesis

+0

很有可能是因爲聊天系統代碼中有錯誤,所以您應該對聊天系統js的配置(初始化)進行發佈,如果它不是傳統的庫,那麼可能是其中的一部分。 – regilero

回答

0

我想通了這個問題。

在我的process.php腳本中,我將記錄來自哪個頁面,然後返回到該頁面。看起來好像ajax腳本覆蓋了這個,腳本會讓它進入錯誤的頁面。現在我已經設置了process.php腳本的一部分,現在只能進入community.php。