[英]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.