如何使用更新的mysql数据库信息更新javascript中的php变量?

时间:2011-04-17 22:05:58

标签: php javascript mysql variables

我有一个更新值的数据库,这是多人游戏中对手的位置。

尝试使用更新的位置信息更新对手模型时出现问题。

我有两个单独的php文件来执行此操作:

1。)使用

多次在javascript文件中调用update.php

xmlhttp = new XMLHttpRequest(); xmlhttp.open('GET',“xml_http_request.php?mod0 =”+ truckHeading +“& mod1 =”+ newhtr [1] +“& mod2 =”+ absRoll +“& lla0 =”+ lla [0 ] +“& lla1 =”+ lla [1] +“& lla2 =”+ lla [2] +“& pid =”+'1'+“& rangeCheck =”+ rangeCheck +“& ranger =“+ ranger +”& ie =“+ ie +”& message =“+ message +”& unLoader = false“,true); xmlhttp.send(NULL);

2。)retrieve.php仅在我的index.php文件中被调用一次

我相信解决方案是每次运行update.php文件时运行一次retrieve.php文件(比如上面的代码之后),但我不知道代码行是什么那样做。

这是我的retrieve.php文件中的内容:

require("db1.php"); //for using live public database

$query="SELECT mod0, mod1, mod2, lla0, lla1, lla2, namely, message FROM positioner WHERE id = 1 ";
$result=mysql_query($query);

while ($row=@mysql_fetch_assoc($result)){

    $mod0 = $row['mod0'];
    $mod1 = $row['mod1'];
    $mod2 = $row['mod2'];
    $lla0 = $row['lla0'];
    $lla1 = $row['lla1'];
    $lla2 = $row['lla2'];

}

echo "<script> var mod0php = $mod0; </script>";
echo "<script> var mod1php = $mod1; </script>";
echo "<script> var mod2php = $mod2; </script>";
echo "<script> var lla0php = $lla0; </script>";
echo "<script> var lla1php = $lla1; </script>";
echo "<script> var lla2php = $lla2; </script>";

&GT;

1 个答案:

答案 0 :(得分:2)

如果这些是数字,那么我没有看到问题。但如果它们是字符串,我在

看到了一个问题
echo "<script> var mod0php = $mod0; </script>";
echo "<script> var mod1php = $mod1; </script>";
echo "<script> var mod2php = $mod2; </script>";
echo "<script> var lla0php = $lla0; </script>";
echo "<script> var lla1php = $lla1; </script>";
echo "<script> var lla2php = $lla2; </script>";

将此更改为

echo "<script> var mod0php = '$mod0'; </script>";
echo "<script> var mod1php = '$mod1'; </script>";
echo "<script> var mod2php = '$mod2'; </script>";
echo "<script> var lla0php = '$lla0'; </script>";
echo "<script> var lla1php = '$lla1'; </script>";
echo "<script> var lla2php = '$lla2'; </script>";

你缺少字符串周围的qoutes。

你可以通过

运行它
include 'retrieve.php';
or include_once 'retrieve.php';
但是,这会带来安全风险。 另一种方法是让php使用http检索它。

$content = http_get("http://nowhere.com/retrieve.php"); //there are options on this call if you want