为什么这个wordpress代码抛出一个空的WPDB错误?

时间:2012-05-02 11:37:29

标签: mysql wordpress-plugin wordpress

我正在写feed reader plugin for wordpress。我看到一个我无法弄清楚的数据库错误。 首先我create a table called user_entries。 然后我放了sample entry into that table。 当I try to delete an entry时,我的调试日志中出现了一个非常奇怪的错误。还没有外键,db上没有索引等等。

  

[02-May-2012 11:21:52]查询的WordPress数据库错误         删除         来自wp_wprss_user_entries
        WHERE owner_uid = 2         AND feed_id = 2;由do_action,call_user_func_array,wprss_unsubscribe_feed,WprssFeeds->删除

制作

那么错误是什么?它只是空白。这看起来不像复杂的SQL,它在phpmysql查询窗口中工作正常。我现在不确定下一步要做什么,我希望大家能够取消订阅Feed!

2 个答案:

答案 0 :(得分:7)

想出来!即使没有错误,$wpdb->print_error()也会输出错误字符串。所以你必须明确检查查询是否返回false - 不是0。

    if(false === $wpdb->query($sql)){
      $resp->uf_error = $wpdb->print_error();
    }

答案 1 :(得分:-2)

尝试拆分您的查询,以便它只尝试从1 WHERE子句中删除..

即:

DELETE FROM wp_wprss_user_entries WHERE owner_uid=2;
run query
DELETE FROM wp_wprss_user_entries WHERE feed_id=2;
run query

中号