我刚刚创建了一个主题,并制作了一个动作就是选项的表单。php,但它给出了一个错误的选项页面没有找到。因此,我决定使用创建插件的代码在wp数据库中创建自己的表:
register_activation_hook(__FILE__, \'create_javart_theme_settings_table\');
function create_javart_theme_settings_table() {
global $wpdb;
$version = get_option(\'my_plugin_version\', \'1.0\');
$charset_collate = $wpdb->get_charset_collate();
$table_name = $wpdb->prefix . \'javart_theme_settings_table\';
$sql = "CREATE TABLE $table_name (
id bigint(20) NOT NULL AUTO_INCREMENT,
name varchar(200) DEFAULT \'\' NOT NULL,
value longtext NOT NULL,
type varchar(200) NOT NULL,
PRIMARY KEY (id)
) $charset_collate;";
require_once( ABSPATH . \'wp-admin/includes/upgrade.php\' );
dbDelta($sql);
update_option(\'my_plugin_version\', $version);
}
这段代码可以很好地为我创建一个表,但是当我从表单中插入数据时,页面会刷新,但没有任何内容会进入wordpress db。
表格为:
<form method="post" action="">
<p>About Us Diagram <input id="title" type="text" name="title" placeholder="Title" /><input type="text" name="content" placeholder="Content" /></p>
<?php submit_button(\'Save Settings\'); ?>
</form>
检索此内容的php代码是
<?php
$titleData = $_POST[\'title\'];
$contentData = $POST[\'content\'];
?>
然后重新进入plugin,在plugin中插入代码的值:
function about_us_form_to_database_exporter() {
global $titleData;
global $contentData;
global $wpdb;
$wpdb->show_errors();
$wpdb->last_query;
$type = \'About Us\';
$table_name = $wpdb->prefix . \'javart_theme_settings_table\';
$wpdb->insert(
$table_name, array(
\'name\' => \'Title\',
\'value\' => $titleData,
\'type\' => \'About Us\',
)
);
$wpdb->print_error();
var_dump($wpdb);
}
register_activation_hook(__FILE__, \'about_us_form_to_database_exporter\');
那么,输入没有进入wordpress数据库的表是什么错误呢