如何问javascript等待mysql为php变量赋值?

zac*_*987 2 javascript php mysql

<?php
  $query3 = "SELECT message FROM messageslive LIMIT 1";
  $result3 = mysql_query($query3,$connection) or die (mysql_error());
  confirm_query($result3);
  while($userinfo3 = mysql_fetch_array($result3)){
      $msgLive = $userinfo3['message'];
  }
?>

<script type="text/javascript">
  var msg = "<?php echo $msgLive ; ?>";
</script>
Run Code Online (Sandbox Code Playgroud)

我担心的是当数据库表有太多的数据要搜索和检索时,所以PHP变量$msgLive还没有值,所以Javascript变量var msg得到空值.如何让javascript等到PHP变量$msgLive得到值然后只将值从php变量转移到Javascript?

Dar*_*rov 8

您不必担心这一点,因为首先执行服务器脚本,花时间与数据库通信,为msgLive变量分配值,最后生成发送到客户端的HTML.在这段时间内,客户端等待(并且可能会因为他正在经历的缓慢连接而诅咒他的ISP :-)).因此,一旦HTML到达客户端浏览器,javascript变量将设置其值.所以不需要告诉javascript等待,在服务器完成其工作并将HTML推送到客户端之前,javascript甚至不存在.

  • @ zac1987,无论你把它放在哪里.您应该真正区分服务器端代码和客户端代码.这是两个完全不同的过程,发生在两个不同的时间点.首先,生成HTML的服务器发送到客户端,然后客户端将获取它,如果此HTML包含javascript,它将在浏览器内运行,... (3认同)