2010-08-25 158 views
0

对MySQL不利。我有一个查询,它没有显示单元格的值只是行名:mysql查询不显示结果

$sql="SELECT 'first' from `users` WHERE `id`= $userid "; 
$res=mysql_query($sql) or die(mysql_error()); 

$row=mysql_fetch_assoc($res); 

echo $row['first'] ; 

我在做什么错?

回答

0

首先从“第一”删除报价 - 这是一个列,所以不要把它放在引号中,你可以使用`istead。 通过结果的下一个循环,这就是全部。

$sql="SELECT first from `users` WHERE `id`= $userid "; 
$res=mysql_query($sql) or die(mysql_error()); 

while($row=mysql_fetch_assoc($res)) 
    echo $row['first'] ; 
0

尝试:

echo $row[0]['first']; 
1

支架在您的查询是错误的:

$sql = "SELECT 'first' from `users` WHERE `id` = $userid"; 

必须是:在first

0
SELECT 'first' 

$sql = "SELECT `first` from `users` WHERE `id` = $userid"; 

注意区别就干脆先返回字符串。

删除引号。

0

$ sql =“SELECT'first'from users WHERE id = $ userid”;

您正在使用普通引号选择而不是反引号,而不是从数据库中选择任何内容。

使用 $ sql =“SELECT first from users where id = $ userid”; 代替

和侧面说明: 从来没有“一定”您查询的循环正好返回1行

使用mysql_fetch_assoc()和检查,如果你真的恢复1个结果。