当前位置: 首页 > 知识库问答 >
问题:

错误与WordPress查询使用$wpdbget_results[重复]

酆勇
2023-03-14

我在WordPress数据库中添加了一篇标题为“titleofpost”的帖子。我尝试在PHP7中使用$wpdb get_results,但出现以下错误:

致命错误:未捕获错误:调用未定义的函数mysql\u error()。

什么是错的?任何帮助都很感激。

我使用下面的代码:

global $wpdb;
$leadTitle="titleofpost";
$sql = "SELECT * FROM $wpdb->posts WHERE post_title LIKE '%$leadTitle%'";
$post_if = $wpdb->get_results($sql) or die(mysql_error()); //here dies

共有2个答案

拓拔俊艾
2023-03-14

根据这一点,然后mysql_error()被弃用,因为PHP 5.5.0。也许尝试error_log()(然后查看php错误日志)。

可能是这部分代码导致了错误:或死亡(mysql_error())

邵捷
2023-03-14

你的这个

global $wpdb;
$leadTitle="titleofpost";
$sql = "SELECT * FROM $wpdb->posts WHERE post_title LIKE '%$leadTitle%'";
$post_if = $wpdb->get_results($sql) or die(mysqli_error()); //here dies

您可能在XAMPP中有PHP7。现在有两种选择:MySQLi和PDO。

此外,这里还有一个关于PDO的不错的wiki页面。

使用PDO处理错误PDO有多种处理错误的方法。

PDO有三种错误模式。

首先是PDO::ERRMODE_SILENT。这与mysql_*函数非常相似,因为在调用PDO方法后,您需要检查PDO::errorCode或PDO::errorInfo以查看其是否成功。

第二种错误模式是PDO::ERRMODE_WARNING。除了抛出一个E_WARNING消息外,这几乎是一样的。

最终的错误模式是PDO::ERRMODE_EXCEPTION。当发生错误时,这个会抛出一个PDOExc0019。这是我推荐的方法,并将用于进一步的示例。

// You can set the error mode using the fourth options parameter on the constructor
$dbh = new PDO($dsn, $user, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));

// or you can use the setAttribute method to set the error mode on an existing connection
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

//方法2

try {
    $dbh = new PDO($dsn, $user, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
} catch (PDOException $e) {
    log_error("Failed to connect to database", $e->getMessage(), $e->getCode(), array('exception' => $e));
}

//方法3

try {
    $dbh->query("INVALID SQL");
} catch (PDOException $e) {
    log_error("Failed to run query", $e->getMessage(), $e->getCode(), array('exception' => $e));
}
 类似资料:
  • 我尝试使用多个自定义字段显示结果,同时按第一个自定义字段(startdate)排序结果。我看到的建议让我尝试了以下方法: 问题是,如果没有meta_key参数,结果会默认过滤帖子的日期。当我添加meta_key参数对结果进行排序时,我得到的每一篇文章都有一个meta_key等于开始日期。通过添加这些meta_key参数,语句似乎完全忽略了meta_query数组中的条件。我如何让查询排序的开始日期

  • 我正在wordpress中运行wpdb select查询,并从文本框中获取其参数。只要我按下搜索按钮,结果就会显示出来。但是我想在不刷新页面的情况下对ajax做同样的操作。我尝试了所有的方法,但是页面仍然刷新。 下面是我的代码 //Jquery代码 html //php函数 下面是我使用过的其他php代码 PHP代码 下面是加入jQuery页面的代码 谢谢大家,并向…致意!

  • 我想知道是否有人可以帮助我,我一直在WordPress主题上得到以下错误 分析错误:语法错误,意外' 如果(!empty($smof_数据['菜单响应图标']

  • 我已经创建了一个包含多个分类法的自定义查询,在此基础上,我使用进行分页。分类法是通过下拉选择表单来选择的,使用可以过滤帖子,这只是一个临时解决方案,但目前效果良好,值得注意。 分页工作正常,当选择分类术语时,帖子可以正确显示,但是当我离开第一页,比如说我进入第2页,在下拉选择器中选择不同的分类术语时,URL会保留当前页码,并向其中添加选择器ID。我想实现的是,当我在选择器中单击不同的分类法时,新选

  • 我得到以下错误时使用的简单代码在wordpress.任何想法如何解决这个问题? 错误: Javascript: HTML: