mysql 为什么尝试在插件函数中使用$wpdb会产生语法错误?

wydwbb8l  于 2023-06-04  发布在  Mysql
关注(0)|答案(1)|浏览(153)

我正在编辑一个QR码插件,它基本上扫描代码并将您发送到其链接。我正试图添加将扫描的内容写入自定义WordPress MySQL表的功能。我已经在插件文件中加载了这样的核心WP函数:

$path = preg_replace( '/wp-content.*$/', '', __DIR__ );
require_once( $path . 'wp-load.php' );
global $wpdb;

下面是写入wpdb的函数:

function write_scan($qrCodeMessage) {
    $wpdb->insert('scan', [ 'column' => 'tnx_id', 'field' => $qrCodeMessage ]
    );
}

代码会产生以下错误:Uncaught SyntaxError: Unexpected token '>'
引用函数“write_scan”。有人知道我哪里做错了吗?
我尝试写入数据库,但似乎php文件不支持它。

oyjwcjzk

oyjwcjzk1#

如注解中所述,您应该在函数本身中声明全局变量。否则它们不可用。另外,您对插入函数的使用也不正确。你应该给予它一个数组,其中键是列名,值是你想要插入的值。下面是一个工作示例:

function write_scan($qrCodeMessage) {
    global $wpdb;
    $wpdb->insert('scan', ['tnx_id' => $qrCodeMessage ]
    );
}

相关问题