PHP变量没有显示出来。 GETid无法正常工作

时间:2012-07-18 23:16:14

标签: get

我已设置所有登录脚本和配置文件。我有一个数据表,其中存储了名为plus_signup的所有配置文件信息,但我似乎无法使这个GET[id]工作。我错过了什么吗?这就是我所拥有的。 当我使用我现在的代码查看页面时,PHP应该填充变量的空白区域。

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 个答案:

答案 0 :(得分: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\"/>";
}}

您从网址获取'id'并将其存储为$ id。当你打电话给你的查询时,你正在搜索ID = $ userid的位置,当你真正应该搜索ID = $ id时。

确保您的变量始终相同!

^希望能帮助一些人在试图弄清楚他们的功能无法正常工作时避免一两个小时的挫败感!