gpt4 book ai didi

php - wpdb::prepare() 缺少参数 2,在第 252 行调用 in/dbtable.php 并在第 1246 行定义在/public_html/wp-includes/wp-db.php

转载 作者:行者123 更新时间:2023-11-28 23:20:23 26 4
gpt4 key购买 nike

每天我都会在日志文件中看到这个错误:

PHP Warning: Missing argument 2 for wpdb::prepare(), called in /home/xxxxxxxx/public_html/wp-content/plugins/affiliate-link-cloaking/dbtable.php on line 252 and defined in /home/xxxxxx/public_html/wp-includes/wp-db.php on line 1246

在第 252 行的/dbtable.php 中,我有以下代码:

$result = $wpdb->query($wpdb->prepare("DELETE FROM ". $this->track_table_name . " WHERE YEAR(visittime)=". date('Y',$sdate) . " AND MONTH(visittime)=" . date('m',$sdate) ));

在 1246 行的/wp-db.php 中,我有这段代码:

public function prepare( $query, $args ) {

请记住,我在 PHP/SQL 方面经验不足,我不会理解一般的提示。请告诉我,要复制什么并粘贴到哪里))

谢谢

最佳答案

这不是使用 $wpdb->prepare 的正确方法,第一个值应该是带有替换标记的 SQL (%s=string, %d=digit, etc),后跟要替换它们的值。

$sql = "DELETE FROM {$this->track_table_name} WHERE YEAR(visittime) = %d AND MONTH(visittime) = %d";
$query = $wpdb->prepare($sql, date('Y', $sdate), date('m', $sdate))
$wpdb->query($query);

请看这里的例子: https://developer.wordpress.org/reference/classes/wpdb/prepare/

关于php - wpdb::prepare() 缺少参数 2,在第 252 行调用 in/dbtable.php 并在第 1246 行定义在/public_html/wp-includes/wp-db.php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41966054/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com