我想在我的Wordpress数据库中添加一些数据。通过在我的插件主文件中使用此代码已经创建了表:
function create_schedule_table() {
global $wpdb;
$table_name = $wpdb->prefix . "my_tablename";
if($wpdb->get_var("SHOW TABLES LIKE '$table_name'") != $table_name) {
$sql = "CREATE TABLE $table_name (
id mediumint(9) NOT NULL AUTO_INCREMENT,
time datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
name tinytext NOT NULL,
text text NOT NULL,
url VARCHAR(55) DEFAULT '' NOT NULL,
UNIQUE KEY id (id)
);";
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
dbDelta( $sql );
}
}
完美无缺。但现在用户应该能够通过单击按钮来保存数据。通过单击按钮,我的插件目录中的辅助PHP脚本将被执行。在该文件中,我启用wordpress函数:require_once("../../../wp-load.php");
并使用global $wpdb;
初始化wpdb变量
我尝试用以下内容将某些东西保存到我的桌子上:
$table_name = $wpdb->prefix . "my_tablename";
$test='toast';
$wpdb->insert('wp_my_tablename',
array(
'monday'=>$test
),
array(
'%s'
)
);
但遗憾的是没有任何变化。我试图调试或得到一个错误但到目前为止找不到任何东西。这样:
$result = $wpdb->get_results("SELECT * FROM wp_my_tablename");
var_dump($result);
刚刚返回一个空数组。
exit( var_dump( $wpdb->last_query ) );
返回:
string(60) "INSERT INTO `wp_my_tablename` (`monday`) VALUES ('toast')"
那么错误在哪里?我怎么能让它起作用?
答案 0 :(得分:1)