如何在我的自定义插件中使用WP向我的数据库添加插入?

时间:2018-01-25 14:52:26

标签: php database wordpress

我正在制作一个自定义插件,我想向数据库添加字段(我有一个新表创建)但我不能这样做。

我有这样的形式,但动作不打开文件" page_options.php"

<form method="post" action="page_options.php">
    /* inputs */
<input type="Submit" name="send" value="button">
</form>

我认为是路径的问题,但我不确定。我也把它放了,但也不行:

 <form method="post" action="<?=plugin_dir_path(__FILE__).'page_options.php'?>">

如何将插入添加到我的数据库?

此致

2 个答案:

答案 0 :(得分:0)

我用以下方法修复:

 <form method="post" action="<?php echo plugins_url( 'page_options.php', __FILE__ ) ?>">

但是现在我输入的任何代码都会在页面上显示错误:

未捕获错误:在...中调用null上的成员函数insert() 未捕获的错误:在..

中调用未定义的函数wp_redirect()

page_options.php中的代码是:

global $wpdb;
$wpdb->insert('nameTable',
    array(
        'number' => '00000',
        'available' => 1, 
        'Id' => 11
    ),
    array('%s','%d','%d'));
wp_redirect(admin_url('admin.php'));
exit();

我该如何解决此错误?

问候。

答案 1 :(得分:0)

为了初始化WordPress基础设施,至少应该这样做 如果要将裸.php文件用作表单操作,请包含wp-load.php。请注意,每个人都可以执行.php文件,而不仅仅是登录用户,因此您需要手动检查。

实现插件选项页面的更好方法是使用内置功能的WordPress选项页面。 有关详细说明和示例,请参阅https://codex.wordpress.org/Creating_Options_Pages