【问题标题】:Code that used to work now doesnt work以前可以工作的代码现在不工作了
【发布时间】:2012-08-28 16:26:46
【问题描述】:

基本上几周前我遇到了一些代码and it was solved here 的问题,现在我的问题在于当我回到这个项目并尝试使用正在运行但现在它无法正常工作的代码时......即使我一个人尝试.... 我在 Apache 中遇到的错误是

"[28-Aug-2012 16:24:45 UTC] PHP Fatal error:  Call to a member function fetchAll() on a non-object in C:\Program Files (x86)\Zend\Apache2\htdocs\Proj11\2.php on line 49" 

第 49 行是 if 语句

我真的不知道问题出在哪里,因为它曾经工作过......谁能给我一个提示我的问题可能是什么?我一定是服务器问题吧?谢谢

$results = $db->query('SHOW TABLES LIKE \'pages\'');
if (count($results->fetchAll()) > 0) {
    echo 'table exists';
} else {
    echo "it doesnt";
}

【问题讨论】:

  • 您是否检查过$results 的设置是否正确? $db 工作了吗?
  • 人们如何自找麻烦总是让我感到惊讶。假设fopen()query() 总是成功是很幼稚的。你举个例子。另外,不要写query('SHOW TABLES LIKE \'pages\'');,你会以更清晰的代码结束query("SHOW TABLES LIKE 'pages'");

标签: php mysql


【解决方案1】:

您的错误意味着$results 没有获取对象。 $db->query 返回null

我还发现original problem 和您当前的代码之间存在差异。

$db->query('SHOW TABLE LIKE \'page\'');

现在变成了

$db->query('SHOW TABLE LIKE \'pages\'');

【讨论】:

    猜你喜欢
    • 2014-11-15
    • 2019-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-18
    • 1970-01-01
    • 2021-09-20
    • 1970-01-01
    相关资源
    最近更新 更多