如何将PHP变量传递给Javascript?

Joh*_*ims 1 javascript php

我有2个页面,一个PHP和一个Javascript.我想在一个页面上传递这个PHP脚本中的变量:

$strFind="SELECT * FROM  cometchat_chatrooms_users WHERE userid=$curmemid";
$result=mysql_query($strFind) or die(mysql_error());
$row=mysql_fetch_array($result);
$room=$row['chatroomid'];
Run Code Online (Sandbox Code Playgroud)

在另一个页面上的这个Javascript:

var timestamp = 0;
var currentroom = $room;
var heartbeatTimer;
var minHeartbeat = 3000;
var maxHeartbeat = 12000;
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

CSc*_*ulz 8

当PHP生成JavaScript时,您可以执行此操作.给出的例子:

<?php
...
$curmemid = intval($externalValue);
$strFind = 'SELECT * FROM cometchat_chatrooms_users WHERE userid='.$curmemid;
$result = mysql_query($strFind) or die(mysql_error());

if (isset($result)) {
    $row = mysql_fetch_array($result);
    $room = $row['chatroomid'];
} else
{
    echo 'There is something wrong!';
    $room = -1;
}
...
?>
<script type="text/javascript">
var timestamp = 0;
var currentroom = <?php echo $room; ?>;
var heartbeatTimer;
var minHeartbeat = 3000;
var maxHeartbeat = 12000;
</script>
Run Code Online (Sandbox Code Playgroud)

  • @David Dorward:不,它不会,这段代码绝对正确,`$ room`介于`<?php`和`?>之间 (2认同)
  • 这将打破,如果$房间是不是一个数字或存储在数据库中的JS文本格式(例如包括'"单曲在字符串或`{`和`}`中的对象). (2认同)