如何将一个while循环变量从Php传递给一个实时运行的JavaScript函数

时间:2016-10-16 05:57:28

标签: javascript php

我尝试创建的权利基本上是当有人给您发消息时的通知。很简单,当我在聊天网页和朋友留言时,他的名字旁边会出现通知。我的问题就像标题所示,我发现在将一个while循环变量从Php传递给JavaScript函数时遇到了困难。

这是我的Php代码:

<?php
$query = $db->prepare("
    SELECT frst_user AS frst, scnd_user AS scnd 
    FROM frnd_rqst
    WHERE (frst_user=:fid OR scnd_user = :fid)#
        AND status=2
");
$query->bindParam(":fid", $getid);
$query->execute();
while($row = $query -> fetch(PDO::FETCH_ASSOC)) {
    $numrow = $query -> rowCount();
    $frst = $row['frst'];
    $scnd = $row['scnd'];   
    $sec_quer = $db->prepare("
        SELECT fname, lname, stud_id 
        FROM stud_bas 
        WHERE stud_id!=:sid 
            AND (stud_id=:fid OR stud_id = :tid)
    ");
    $sec_quer->bindParam(":sid", $getid);
    $sec_quer->bindParam(":fid", $frst);
    $sec_quer->bindParam(":tid", $scnd);
    $sec_quer->execute();
    $result = $sec_quer->fetch();
    $fname = $result['fname'];
    $lname = $result['lname'];
    $frid = $result['stud_id'];
?>

    <ul>
        <li  class="friend-message" id="<?php echo $frid;?>" value="<?php echo $frid;?>">
            <a href="#" ><?php echo $fname." ".$lname;?></a>
        </li>
        <p id="fridfrid<?php echo $frid;?>"></p>
    </ul>
<?php
}
?>

以下是JavaScript代码:

<script type="text/javascript">
  function numberOfMessages() {
    var no_msg = new XMLHttpRequest();
    var frid = "<?php echo $frid;?>";
    no_msg.onreadystatechange = function() {
      if (no_msg.readyState==4 && no_msg.status==200) {
      document.getElementById('fridfrid' + frid).innerHTML = no_msg.responseText;
      }
    }
    no_msg.open('GET','php/testing.php?frid=' + frid, true);
    no_msg.send();
  }
  setInterval(function(){numberOfMessages()},1000);
</script>

我已经尝试将函数放在while循环中,但仅适用于最后一个输出。我也试过你得到的所有名字,但这似乎对我也没有用。有什么建议吗?

0 个答案:

没有答案