2011-08-22 77 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。