学做网站培训课程介绍

当前位置:

WordPress 前端创建数据表并对数据增删改查

使用wordpress做网站时,我们有时需要创建一个数据表来存储自己的一些信息,那么怎么在前端就可以自动创建数据表呢,并且可以对数据表的信息进行增删改查操作。下面学建站网就来介绍一下WordPress如何在前端创建数据表并对数据增删改查的操作方法。

1、wordpress创建数据库表


function add_table(){ //创建自定义分类表函数
global $wpdb;
$table_name = $wpdb->prefix . "diandan"; //声明表名 wp_diandan为要创建的表名
$table_names = $wpdb->get_var("SHOW TABLES LIKE '$table_name'"); //获取声明的表判断是否存在
if($table_names != $table_name){
$sql = "CREATE TABLE " . $table_name . " (
`tid` bigint(20) NOT NULL AUTO_INCREMENT,
`term_id` bigint(20) NOT NULL,
`yanse` TEXT(20) NOT NULL,
`riqi` DATETIME NOT NULL,
`fhtime` TEXT(20) NULL,
PRIMARY KEY (`tid`),
UNIQUE KEY `term_id` (`term_id`)//设置唯一值的字段(需要设置长度,如:bigint(20))
) ENGINE=MyISAM DEFAULT CHARSET=utf8;"
;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);
}
}
add_table();

tid:表中的字段 term_id:表中字段 可根据需求增加

1-2、如果需要通过循环动态添加字段,可以这样写:


//创建自定义分类表函数
function add_table(){
global $wpdb;
$sqllr ="";
$cansuen=get_option('cansuen');
$cansuenarr= $cansuen ? explode(",", $cansuen) : array();
for($i=0;$i<count($cansuenarr);$i++){
$sqllr = $sqllr."`".$cansuenarr[$i]."` TEXT(20) NULL,";
}
$table_name = $wpdb->prefix . "dingdan"; //声明表名 types为要创建的表名
$table_names = $wpdb->get_var("SHOW TABLES LIKE '$table_name'"); //获取声明的表判断是否存在
if($table_names != $table_name){
$sqllr = "`tid` bigint(20) NOT NULL AUTO_INCREMENT,
`useid` BIGINT(20) NOT NULL,
`shopid` BIGINT(20) NOT NULL,"
.$sqllr."
`danjia` FLOAT NOT NULL,
`shu` TEXT(20) NOT NULL,
`zongjia` FLOAT NOT NULL,
`riqi` DATETIME NOT NULL,
`fahuo` TEXT(20) NULL,
`usename` TEXT(20) NULL,
`usetell` TEXT(20) NULL,
`usedizhi` TEXT(20) NULL,
`kuaidi` TEXT(20) NULL,
`fhtime` TEXT(20) NULL,
PRIMARY KEY (`tid`),
UNIQUE KEY `tid` (`tid`)"
;
$sql = "CREATE TABLE " . $table_name . " (".$sqllr.") ENGINE=MyISAMDEFAULT CHARSET=utf8;";
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);
}
}

2、wordpress增加数据库表字段 $wpdb->query()

$wpdb->query() 中可为任意的增删改查sql语句


global $wpdb;
$table_name = $wpdb->prefix . "types"; //表名
$sql = $wpdb->query("ALTER TABLE 表名 ADD 字段名 CHAR(255)");
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);

3、wordpress数据库增删改查操作

增:$wpdb->insert() ,


global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
//增加数据
$sql = $wpdb->insert('wp_termmeta',array('term_id'=>8,'meta_key'=>'title','meta_value'=>'我是标题'));
dbDelta($sql);

删:$wpdb->delete(),


global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
//删除数据表 wp_termmeta 中 meta_id 为 1 的数据
$sql = $wpdb->delete( 'wp_termmeta', array( 'meta_id' => 1 ) );
dbDelta($sql);

改:$wpdb->update,


global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
//改 (修改meta_id等于80中的 meta_value中的值为我是修改后的标题 )
$sql = $wpdb->update('wp_termmeta',array('meta_value'=>'我是修改后的标题'),array('meta_id'=>80));
dbDelta($sql);

第一个数组为修改的内容,第二个为修改的条件

查:$wpdb->get_results


global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
$sql = $wpdb->get_results("SELECT * FROM wp_termmeta WHERE term_id = '9' ");
for($i=0;$i<count($sql);$i++){
echo $sql[$i]->meta_key;
echo $sql[$i]->meta_value;
}
print_r($sql);

4、$wpdb是一个全局变量,包含多个关于wordpress数据库操作函数:


$wpdb -> get_results('query');
$wpdb->query('query');
$wpdb->get_var('query',column_offset,row_offset);
$wpdb->get_row('query', output_type, row_offset);
$wpdb->get_col('query',column_offset);
$wpdb->get_results('query', output_type);
$wpdb->insert( $table, $data, $format );
$wpdb->update( $table, $data, $where, $format = null, $where_format = null );
$wpdb->prepare( 'query' [, value_parameter, value_parameter ... ] );
$wpdb->show_errors();
$wpdb->hide_errors();
$wpdb->print_error();
$wpdb->get_col_info('type', offset);
$wpdb->flush();

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

相关教程

  • 我们做网站时,如何将分类栏目里的置顶文章显示在最前面呢?然后再显示新发布的文章。怎么实现在调用最新文章列表中置顶文章靠前显示呢?代码如下:
  • WordPress定时发布文章失败的情况,那么如何解决呢?WordPress网站服务器环境或插件冲突可能会导致WordPress产生文章定时发布失败。一般可以安装并启
  • WordPress后台文章添加自定义字段填是非常简单的下拉选择式,如何将Wordpress后台文章添加自定义字段填变为填写框,并且让他可以上传图片的功能呢?下
  • 我们有的时候,在制作好一款wordpress主题的时候,也需要用户在激活主题后,能够自动的创建一些页面和文章,好让用户能够更好更快的熟悉起来,因为,
  • 使用WordPress做网站时,需要使用前端投稿功能,我们可以在前端投稿功能中添加图片上传功能。这样用户在前端就可以直接上传图片了。下面学建站网介
  • WordPress建好网站之后,往往由于服务器本身漏洞、网站后台使用弱密码登录等原因,造成网站被黑,植入了非正规的垃圾代码。造成网站跳转或者打不开。
  • 要使用PHP修改WordPress数据库的某个字段值,可以使用WordPress提供的内置函数和查询语句。以下是一个示例代码片段,可以帮助实现这个目标:<?p
  • 现在很多服务器都在使用宝塔面板,下面学做网站论坛介绍一下宝塔面板安装WordPress建网站的详细过程。方法/步骤第一步:宝塔面板创建站点;创建站点
  • 在之前的建站教程中,我们介绍了如何制作网站前台用户登录/注册功能,通过这个方法可以制作出自定义的用户注册功能。效果如下图:这也是常用的用户
  • 如果使用的虚拟主机安装的是Nginx系统,那么安装WordPress程序之后,是不能自动伪静态的,会导致网站非首页页面出现404的情况,需要设置一下伪静态文