程序员人生 网站导航

ThinkPHP中ajax调用问题

栏目:ThinkPHP时间:2014-08-11 15:44:35
这次博文主要写一个困扰我两天的ajax调用问题。
php端
  1. $data['status'] = 1;  
  2.      $data['info'] = 1;  
  3.      $data['url'] = 1;  
  4.      $m = M('webworkpage');  
  5.      $where ="satae = 0";  
  6.      $first = $m->where($where)->count();  
  7.      $num = $m->count();  
  8.      $data['size'] = $first;  
  9.      $data['sizes'] = $num;  
  10.      if ($num) {  
  11.          $this->ajaxReturn($data,'JSON');  
  12.      }else{  
  13.          $this->ajaxReturn($data,'JSON');  
  14.      } 

 

ajaxReturn 在php3.2版本之后都使用 $data定义参数,然后最后使用ajaxReturn($data,'JSON');
如果使用之前的ajaxReturn(1,"成功消息",1);这种是无法传值回去。可能跟环境有关,用的是onethink框架,PHP5.3以上。
 
前端JS,需调用jQuery文件
这是判断新消息的一个简单版本,具体正统的解法我也不太懂。这个暂时能够解决新消息提醒的问题!
  1. script language="JavaScript">  
  2. //设置全局变量  
  3. number = 0;  
  4. count = 0;  
  5. setInterval("check_news()",1000); //每隔一秒执行  
  6. function check_news(){  
  7.     $.getJSON("{$a}",'',function(json){//获取php端传过来的json数据  
  8. if(json.status==1){  
  9. var num = json.size;  
  10. var nums = json.sizes;  
  11. if(num&&count==0){  
  12. alert("有新消息"+num);  
  13. number = nums;  
  14. count++;  
  15. }else if(number  
  16. alert("有新消息"+number+"<"+nums);  
  17. number = nums;  
  18. }  
  19. }else{  
  20. }  
  21. })  
  22. }  
  23. /script> 

 

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐