2011-05-08 77 views
1

可能重复:
mysql_fetch_array() expects parameter 1 to be resource, boolean given in selectmysql读取数组错误?

我得到在我的剧本Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\FBlike\like.php on line 104 .. 我不知道这意味着什么,以及为什么它正在发生...帮助:)?

$like_id=mysql_real_escape_string($_GET['id']); 

$sql=mysql_query("select * from likes WHERE id=$like_id DESC LIMIT 1"); 
while($row=mysql_fetch_array($sql)) 
{ 
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

    <meta name="description" content="<?php print $row['like']; ?>"/> 

    <meta name="keywords" content="<?php print $row['like']; ?>" /> 

    <meta property="og:description" content="Click to See More..." /> 

     <meta property="fb:app_id" content="" /> 



    <meta property="og:title" content="<?php print $row['like']; ?>"/> 

    <meta property="og:type" content="activity"/> 

    <meta property="og:url" content="http://www.fbquote.me/like.php?id=<?php print $row['id']; ?>" /> 

    <meta property="og:site_name" content="pDank" /> 
<title><?php print $row['like']; ?></title> 

<?php } ?> 
+0

我会检查上次mysql_error()调用mysql_fetch_array(前) – Scuzzy 2011-05-08 23:32:11

回答

1

您的SQL查询中有错误。

mysql_fetch_array()之前添加以下代码:

if (!$sql) { 
    die(mysql_error()); 
} 
2

mysql_query()回报FALSE上的错误,ERGO在查询中有一个错误。

使用mysql_error()获取最后一条错误消息。

例如

$result = mysql_query("select * from likes WHERE id=$like_id DESC LIMIT 1"); 
if (false === $result) { 
    throw new Exception('MySQL error: ' . mysql_error()); 
} 
0

这意味着您的查询某种原因失败(无效语法,列没有找到......),并返回FALSE。

为了捕获该问题,请检查$ sql(实际上,您应该命名变量$ result或类似的,这更常见($ sql通常用于查询字符串))为FALSE,如果是这样,print/log无论函数mysql_error()是否返回。