如何使用ajax发送多个数据而不刷新页面

时间:2015-01-21 16:38:00

标签: php ajax

我想从php获取2个或更多数据,并在索引页面上显示。我用这些代码做了,但我不想使用2个php页面和2个函数。

这里是我的index.php

$(document).ready(function(){
  gonder();
  var int=self.setInterval("gonder()",500);
  var int=self.setInterval("gonder1()",500);
});

function gonder()
{
  $.ajax({
    type:'POST',
    url:'maot.php',
    success: function (msg) {
        $("#maot").html(msg);
        }
   });
}
function gonder1(){
 $.ajax({
    type:'POST',
    url:'durum.php',
    success: function (msg1) {
         $("#durum").html(msg1);
         }
   });
 }

在这里我使用了2个函数,但我无法弄清楚如何在不同的div上显示2个变量。

这里有两个我用过的php页面

durum.php

<?php include ( "dataconn.php" );

$smntnlscada = mysql_query ("Select * FROM kompresor");
$scada = mysql_fetch_assoc($smntnlscada);

$durum = $scada['durum'];
if ($durum==0) {
$durum1='no';
} elseif ($durum==1) {
$durum1='yes';
} elseif ($durum==2) {
$durum1='error';
}

$manuel = $scada['manuel'];
if ($manuel==0) {
$manuel1='oto';
} elseif ($manuel==1) {
$manuel1='manuel';
}


echo $durum1;

&GT;

maot.php

<?php include ( "dataconn.php" );

$smntnlscada = mysql_query ("Select * FROM kompresor");
$scada = mysql_fetch_assoc($smntnlscada);

$durum = $scada['durum'];
if ($durum==0) {
$durum1='no';
} elseif ($durum==1) {
$durum1='yes';
} elseif ($durum==2) {
$durum1='error';
}

$manuel = $scada['manuel'];
if ($manuel==0) {
$manuel1='oto';
} elseif ($manuel==1) {
$manuel1='manuel';
}

echo $manuel1;

&GT;

我的问题是如何从ajax获取2个变量,并在不刷新页面的情况下向它们显示单独的div。谢谢你的关注。

2 个答案:

答案 0 :(得分:0)

function gonder(div){
$.ajax({
    type:'POST',
    url:'getmydiv.php',
    data : 'selecteddiv='+div,
    success: function (msg) {
        $('#'+div).html(msg);
        }
});
}

然后在你的PHP函数中查看$ _POST [&#39; selecteddiv&#39;],看看你是否在做durum&#39;或者&#39;护城河&#39;并据此处理。

答案 1 :(得分:0)

在你的php文件中:

$to_send = array();
array_push($to_send, $durum1, $manuel1);
print json_encode($to_send);

在javascript成功函数中:

var data = $.parseJSON(msg1);
$("#durum").html(data[0]);
$("#maot").html(data[1]);