2014-12-05 76 views
0

这是我的ajax调用代码...我在body onload上调用此函数。结果在ajax成功连接

function get_booking_id() { 


    var baseurl = "<?php echo base_url().'index.php/controller_bookplot2/getbookingid'; ?>"; 

    $.ajax({ 
     url: baseurl, 
     datatype:"html", 
     success: function(html) { 

      alert('booking'+html); 
      $("#booking_id").val(html); 
     } 
    }); 
} 

这是我的控制器功能..

function getbookingid() { 

    $sql="select IFNULL(max(booking_id),0) as bookingID from booking"; 
    $query=$this->db->query($sql); 

    if($query->num_rows() > 0) { 

     foreach($query->result() as $row) { 
       echo $x=$row->bookingID; 
       echo $x+1; 
     } 
    } 
} 

所以在警报当数据库没有价值,它显示1,但在下一次显示12个而不是2。因此,我认为它连接结果。我只想要2作为警报不是12.我在做什么错?

+0

我不知道..是正确还是错误? – 2014-12-05 05:17:28

+0

为什么'alert('booking'+ html);'而不是'alert(html);'? – JuanSedano 2014-12-05 05:17:59

+0

只需知道它与预订有关。因为我用于获取付款ID相同的功能。 – 2014-12-05 05:20:02

回答

1

请删除$ x = $ row-> bookingID的echo;如果你不需要回应。

更新控制器功能的代码:

function getbookingid(){ 

    $sql="select IFNULL(max(booking_id),0) as bookingID from booking"; 
    $query=$this->db->query($sql); 

    if($query->num_rows() > 0){ 


    foreach($query->result() as $row){ 
     $x=$row->bookingID; 
     echo $x+1; 
    } 
    } 
    } 
1

当是你得到回波$的值没有值x + 1;,(1)当返回一个值你得到回波$ X = $行 - > bookingID; (值为1)和echo $ x + 1; (该值是2,$ X谁拥有的1加1的值是2),所以在脚本中你得到12

你可以尝试删除回声的一个:

function getbookingid() { 

    $sql="select IFNULL(max(booking_id),0) as bookingID from booking"; 
    $query=$this->db->query($sql); 

    if($query->num_rows() > 0) { 

     foreach($query->result() as $row) { 
       $x = $row->bookingID; 
       echo $x; 
     } 
    } 
}