相同的PHP变量具有2个不同的值

时间:2014-11-10 11:10:30

标签: php jquery python ajax apache

我正在使用带有cgi的本地apache webserver创建一个简单的站点,所以我可以运行我的python脚本。我也使用jQuery向python脚本发出AJAX请求,这样我就可以异步运行脚本。我还使用PHP来模拟登录按钮,以便用户可以登录网站。问题是,在用户登录后,它会显示用户的ID,并且我希望将相同的ID作为参数传递给python脚本,脚本将在其中获取并返回其他内容。虽然我使用相同的PHP变量,但传递给python脚本的变量类似,但与用户登录时显示的变量不同。

用户登录后显示ID的PHP代码:

echo "Welcome back" . "</br> </br>" . $picture ."</br>". $steamprofile['personaname'] . "</br>" .$state .  "</br>".  "Steam ID: ". $steamprofile['steamid'] . "</br>";
    echo '<a href="' . $url . '">Steam Profile</a>'  . "</br> </br>" . "<form action=\"steamauth/logout.php\" method=\"post\"><input value=\"Logout\" type=\"submit\" /></form>";

传递给python脚本的PHP变量(使用J

$(document).ready(function(){
    $("#steambutton").click(function() {
        $.ajax({
            type: "POST",
            url: "http://localhost/cgi-bin/Steap.py",
            data: {steamid: <?php echo $steamprofile['steamid']?>},
            success: function(response) {
                $("#steamdiv").html(response);  
            }
        });
    });
});
</script>

正如您在两个代码段中看到的那样,具有两个不同值的变量是$steamprofile['steamid']。这两个代码片段几乎彼此相邻,并且在执行第一个脚本后,我不会在任何地方更改$steamprofile['steamid']的值。为什么会这样?变量有两个相似的值似乎很奇怪。

例如,这是用户登录后的ID(来自第一个代码): 76561198041778794

这是从第二个代码传递给python脚本的ID,但是: 76561198041778800

1 个答案:

答案 0 :(得分:1)

尝试传递数据(添加引号将其作为字符串传递):

data: {steamid: "<?php echo $steamprofile['steamid']?>"},