在null WORDPRESS上调用成员函数insert()

问题描述 投票:3回答:2

我正在为wordpress写一个插件。我刚刚完成了我的管理页面。它有一个提交按钮。表单元素的action属性发送到“database.php”文件。

这是database.php的代码:

<?php
global $wpdb;

        $table_name =  $wpdb->prefix . "ArmPoll_Questions";
    if($_SERVER["REQUEST_METHOD"]=="POST")
    {

        $wpdb->insert($table_name, array('id'=>'','Question'=>'How r u?'));

    }
?>

但它会导致一个错误

在null上调用成员函数insert()

php mysql wordpress plugins wpdb
2个回答
1
投票

你不能只是写一个直接的PHP页面,并期望它工作。你需要把它写成一个插件或在Wordpress框架内工作的东西。你得到的错误是没有定义$wpdb object。如果您将其作为插件编写,将自动为您定义$wpdb

How to Write a Wordpress Plugin

另一种方法是打开你自己的MySQL连接并直接以这种方式插入。

How to insert data using mysqli


0
投票

您可以加载定义了wpdb的核心功能

define( 'SHORTINIT', true );
require( BASE_PROY_ROOT.'/wp-load.php' );

如果仅加载WP CORE的基础,则SHORTINIT设置为“true”。然后你可以使用全局$ wpdb;

© www.soinside.com 2019 - 2024. All rights reserved.