簡體   English   中英

相同的PHP變量具有2個不同的值

[英]Same PHP variable having 2 different values

我正在使用帶有cgi的本地apache網絡服務器創建一個簡單的站點,因此我可以運行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

嘗試以下方法傳遞數據(添加引號將其作為字符串傳遞):

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM