错误MYSQL预期参数为1?

时间:2012-12-19 16:09:21

标签: php mysql

  

可能重复:
  mysql_fetch_array() expects parameter 1 to be resource, boolean given in select

有人能帮助我吗?我设置的div仅在帐户类型为“付费”的用户显示时显示已登录。

工作正常,付款时#39;用户登录div节目,但如果用户已注销,则会出现此错误消息,我不知道为什么?

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /Applications/XAMPP/xamppfiles/htdocs/PTB1/includes/mod_profile/mod_star_rating/mod_rating.php on line 116

CODE:

<?php

$account_type = account_type();
while ($acctype = mysql_fetch_array($account_type)) 


 if ($acctype['account_type'] == 'paid')  {
     if (logged_in()) { ?>
    <div class="rate-button">can rate</div><?


 } 
 ?>

这是我的帐户类型功能:

function account_type() {
            global $connection;
            global $_SESSION;
            $query = "SELECT account_type
                        FROM ptb_users
                        WHERE id = ".$_SESSION['user_id']." ";
            $account_type = mysql_query($query, $connection);
            confirm_query($query, $connection);
            return $account_type;
        }

2 个答案:

答案 0 :(得分:1)

$acctype = mysql_fetch_array($account_type);

属于

 $account_type = mysql_query($query, $connection);

接着是

return $acctype;

主脚本应为:    $ acc_type = account_type(); 而不是

while

答案 1 :(得分:0)

开始使用mysql_函数已弃用,应替换为mysqli或PDO。

$ account_type可能为false,可以解释您的错误。您需要添加一些检查,以便获得mysql_error()的结果。

你会想做这样的事情:

if(!$account_type) {
  die(mysql_error());
}