在JS函数中使用php变量

时间:2013-09-27 21:57:29

标签: javascript php

我之前问过这个问题,但我提供的例子没有提供我真正的问题。

我想使用php变量从表单中获取输入并在javascript函数中使用它。我不直接使用javascript,因为有问题的变量的内容是从mysql数据库获得的,我不认为我有办法使用javascript访问数据库。

低于我目前的代码:

<!DOCTYPE html>
<html>
  <head>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>

<script>
function initialize() {
    var slon1 = '<?php echo (json_encode($siteLon1)); ?>';  
    self.alert(slon1);

    //some code goes here.
}
</script>

</head>
  <body>
        <div align="center">
     <form method="get">
        <label>Choose Site</label>
        <select name='ps' id="ps" data-inline="true">
                        <?php
                            $use = $fgmembersite->getsites($fgmembersite->UserFullName());
                            $fields_num = mysql_num_fields($use);

                            while($row = mysql_fetch_row($use))
                            {
                                echo "<option value='".$row[0]."'>".$row[0]."</option>";
                            }
                        ?>
         </select>
         <input type="submit" name="submit" value="View">
     </form>
     </div>   
    <div id="map-canvas"></div>

  </body>
</html>

令人惊讶的是,self.alert(slon1)上显示的结果为空;当我只是加载页面或从下拉框中选择并单击视图时。请有人帮我解决这个问题。

感谢。

1 个答案:

答案 0 :(得分:1)

JSON编码器应引用变量,因此手动使用单引号会触发JavaScript解析错误。检查JS控制台。这应该生成有效的JS代码:

var slon1 = <?php echo (json_encode($siteLon1)); ?>;