从php5.2.17迁移到5.3.3

时间:2014-11-25 12:44:30

标签: php centos centos6 centos5

我正在将服务器从Centos 5 php5.2.17移动到Centos 6 php5.3.3 我正面临一个我没写过的代码的问题。旧服务器大约两年没有问题,但在新服务器中,测试警告我: mysql_fetch_array()期望参数1是资源,在第43行的path_to_template / template.php中给出布尔值

以递归方式搜索 : template.php - >第43行:

while($value_comment = mysql_fetch_array($result_comments))

$result_comments = getComments($unique_id);

function getComments($unique_id)
{
    $query = "SELECT * FROM (...)";
    $result = mysql_query($query);

    return $result;
}

$link = mysql_connect($host,$username,$password);
$db = mysql_select_db($db,$link);`

$host “…”;
$username = “…”;
$password = “…”;
$db = “…”;`

要获得输出错误,我更改了$ result:$result = mysql_query($query) or die(mysql_error());

未选择数据库

我没有意识到两个php版本之间发生了什么变化

找到解决方案 mysql用户名已导入但没有任何数据库的权限(自动事物......!)

1 个答案:

答案 0 :(得分:0)

也许您的旧服务器php错误报告已关闭。 当mysql返回0条记录时,您会收到此错误。

$result = mysql_query($query);
$numResults = mysql_num_rows($result);
if ($numResults > 0) {
    // mysql_fetch_array
}