2012-07-18 76 views
0

我設置了所有登錄腳本和配置文件。我有一個數據表,其中存儲的所有配置文件信息都被稱爲plus_signup,但我似乎無法得到此GET[id]的東西的工作。我錯過了什麼嗎?這是我的。 當我用現在的代碼查看頁面時,PHP應該填充變量的空白區域。PHP變量沒有顯示出來。 GETid無法正常工作

session_start(); 

include "include/z_db.php"; 

if ($_GET['id']){ 

$id = $_GET['id']; 

} else if (isset($_SESSION['id'])) { 

$id = $_SESSION['id']; 

} 
else { 
print "important data to render this page is missing"; 
exit(); 

$sql = mysql_query("SELECT * FROM plus_signup WHERE id='$userid'"); 

while($row = mysql_fetch_array($sql)){ 

$userid = $row["userid"]; 
$name = $row["name"]; 
$location = $row["location"]; 
$sex = $row["sex"]; 
$aboutme = $row["aboutme"]; 

} 

$check_pic = "users/$id/image01.jpg"; 
$default_pic = "users/0/image01.jpg"; 
if (file_exists($check_pic)){ 
$user_pic = "<img src=\"$check_pic\" width=\"175px\"/>"; 
} else { 
$user_pic = "<img src=\"$default_pic\"/>"; 
}} 

回答

1

我知道這是一個有點晚,你可能已經想通了這個問題的答案,但我有同樣的問題,只是理解了它。

您的SQL查詢正在調用尚未定義的變量。

session_start(); 

include "include/z_db.php"; 

if ($_GET['id']){ 

$id = $_GET['id']; 

} else if (isset($_SESSION['id'])) { 

$id = $_SESSION['id']; 

} 
else { 
print "important data to render this page is missing"; 
exit(); 

$sql = mysql_query("SELECT * FROM plus_signup WHERE id='$userid'"); 

while($row = mysql_fetch_array($sql)){ 

$userid = $row["userid"]; 
$name = $row["name"]; 
$location = $row["location"]; 
$sex = $row["sex"]; 
$aboutme = $row["aboutme"]; 

} 

$check_pic = "users/$id/image01.jpg"; 
$default_pic = "users/0/image01.jpg"; 
if (file_exists($check_pic)){ 
$user_pic = "<img src=\"$check_pic\" width=\"175px\"/>"; 
} else { 
$user_pic = "<img src=\"$default_pic\"/>"; 
}} 

您從URL獲取'id'並將其存儲爲$ id。當你打電話給你的查詢時,當你真的應該讓它搜索ID = $ id時,你需要搜索ID = $ userid的位置。

請確保您的變量始終是相同的!

^希望可以幫助一些人在試圖弄清楚爲什麼他們的功能不工作時避免一兩個小時的挫折!