mysql_fetch_assoc()期望参数1是资源。具体行

时间:2012-10-25 11:59:49

标签: php mysql

我是新手,也是PHP的新手。我已经做了一些寻找解决问题的方法,但我发现的情况都不像我的。

我正在尝试将数据库值提供给HTML下拉框,但我需要来自数据库的非常具体的行。

Atm我的代码如下:

$query ="SELECT Email FROM circle WHERE Circle_num=$circle_num";
    $query_get = mysql_query($query,$conn);
    if(!$query_get) {
  die("Unable to execute query $query" );
  }

    echo "<select name='circle_users'>";
    while ($temp = mysql_fetch_assoc($query_get)) {
        echo "<option value='".$temp['Email']."'>";
        $temp_email = $temp['Email'];
        $temp_query = "SELECT firstname, lastname FROM user WHERE email=$temp_email";
        if(!$temp_query) {
            die("Unable to execute query $temp_query");
            }
        $get_temp_query = mysql_query($temp_query,$conn);
        $temp2 = mysql_fetch_assoc($get_temp_query);
        echo $temp2['fistname']." ".$temp2['lastname']."</option>";
        }
    }

对于错误的变量名称感到抱歉。我有点急于完成这个。

2 个答案:

答案 0 :(得分:3)

$temp_query = "SELECT firstname, lastname FROM user WHERE email=$temp_email";
if(!$temp_query) {
    die("Unable to execute query $temp_query");
}
$get_temp_query = mysql_query($temp_query,$conn);

您在这里测试查询 string ,而不是mysql_query的结果。
并且查询似乎失败了=&gt; $ get_temp_query是false =&gt; expects parameter 1 to be resource, boolean given

答案 1 :(得分:2)

我认为

$temp_query = "SELECT firstname, lastname FROM user WHERE email=$temp_email";

应该是

$temp_query = "SELECT firstname, lastname FROM user WHERE email='$temp_email'";

您从fetch_assoc获得的错误表示您的查询未成功执行。