php - 未捕获的 ArgumentCountError:函数 wpdb::prepare():update 的参数太少
问题描述
我收到以下错误:
致命错误:未捕获的 ArgumentCountError:函数 wpdb::prepare() 的参数太少,第 108 行的 /homepages/39/d740877019/htdocs/test/wp-content/themes/eduma/formulaire_get.php 中传递了 1 个,而预期的正好是 2 个在 /homepages/39/d740877019/htdocs/test/wp-includes/wp-db.php:1222 堆栈跟踪:#0 /homepages/39/d740877019/htdocs/test/wp-content/themes/eduma/formulaire_get.php (108): wpdb->prepare('UPDATE wp_pmpro...') #1 /homepages/39/d740877019/htdocs/test/wp-includes/template.php(688): require_once('/homepages/39/d ...') #2 /homepages/39/d740877019/htdocs/test/wp-content/themes/eduma/wrapper.php(14): load_template('/homepages/39/d...') #3 / homepages/39/d740877019/htdocs/test/wp-includes/template-loader.php(74): include('/homepages/39/d...') #4 /homepages/39/d740877019/htdocs/test/wp-blog-header.php(19): require_once('/homepages/39/d...') #5 /homepages/39/d740877019/htdocs/ test/index.php(17): require('/homepages/39/d...') #6 {main} 抛出 /homepages/39/d740877019/htdocs/test/wp-includes/wp-db.php在线 1222
有问题的行是下面的第二行:
$current_price = (($ecoles * $classes)/10)*28 ;
$wpdb->query($wpdb->prepare("UPDATE wp_pmpro_membership_levels SET initial_payment='".$current_price."' WHERE name = mairie"));
解决方案
我解决了我的问题:
$current_price = (($ecoles * $classes)/10)*28 ;
$wpdb->query($wpdb->prepare("UPDATE wp_pmpro_membership_levels
SET initial_payment='%s'
WHERE name = %s",$current_price,'mairie'));
推荐阅读
- java - 如何解决“参数不同”错误 - 单元测试
- c - 使用 gdb 调试时 setpgid(0, 0) 失败
- python - pandas - 从另一列中的每一列中替换/删除部分
- javascript - CSS 或 jQuery:如何获得可见的顶部
- sql-server - 数据库设计 - 从多个表中多次引用一个表
- visual-studio-2017 - Visual Studio 2017 未固定的选项卡不断返回
- google-app-engine - IAP 签名标头和 AppEngine 标准 Python 3.7 运行时
- android - 如何通过滑动打开另一个活动
- clearcase - 按月和用户需要的 Clearcase 报告
- ruby-on-rails - Rspec-mocks 不会引发异常