我的表格未在wordpress插件中创建

时间:2018-09-23 17:03:50

标签: php mysql wordpress

我是wordpress的新手,我正在创建表,但我不知道错误发生在哪里,因此表未在数据库中创建,我的表代码在下面

$table_name = $wpdb->prefix . "myuser";
$charset_collate = $wpdb->get_charset_collate();
$sql = "CREATE TABLE $table_name (
        `id` int(11) AUTO_INCREAMENT NOT NULL ,
        `name` varchar(50) CHARACTER SET utf8 NOT NULL,
         `email` varchar(50) CHARACTER SET utf8 NOT NULL,
        PRIMARY KEY (`id`)
      ) $charset_collate; ";

我正在向其中插入数据,但没有错误显示表未创建

 $table_name = $wpdb->prefix . "myuser";

    $wpdb->insert(
            $table_name, //table
            array('name' => $name, 'email' => $email), //data
            array('%s', '%s') //data format         
    );
    $message.="Users added successfully";

1 个答案:

答案 0 :(得分:0)

您只定义了sql查询,您仍然需要执行它。

根据this article,您可以使用以下代码:

require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);

只需将其放在以$sql =开头的部分之后。

假设您正在编写某种插件,请注意,您还必须将函数添加为register_activation_hook

有关更多信息,请参见Writing a pluginCreating Tables with Plugins