2010-03-20 111 views
1

可能重复:
Warning: mysql_fetch_* expects parameter 1 to be resource, boolean given error警告:预计资源,但串给出

我得到:

“资源ID#8 警告:mysql_fetch_array()预计参数1是资源,字符串给出“

继承人的代码:

$sql="SELECT password FROM user WHERE userid=$userid";  
echo $password=mysql_query($sql); 

while($row = mysql_fetch_array($password)) { 
    $password = $row['password']; 
} 

任何想法?

+0

您不需要使用while循环,如果有(最多)只有一个用户给定的'userid' – Progman 2010-03-20 12:22:11

+0

可能你最好试着*了解*发生了什么,而不仅仅是“重用它的其他东西”?如果“重复使用”,它无法在任何地方工作。 – 2010-03-20 13:42:53

回答

2

您在循环覆盖$password

while($row = mysql_fetch_array($password)) { <-------- $password as resource 
    $password = $row['password'];    <-------- $password as string 
} 

这应该工作:

while($row = mysql_fetch_array($password)) { 
    $password_record = $row['password']; 
} 
+0

Doh - 谢谢。 奇怪,因为我重复使用该代码的其他东西,它没有抱怨。 :-) – Damien 2010-03-20 12:11:58

+0

@Damien该循环可能只有一个记录:) – 2010-03-20 13:50:45

相关问题