zblogphp插件开发中创建自定义数据表
数据表文件写法:(创建数据表,原则上必须以%pre%plugin_应用ID为开头命名表;)
usertable.php
<?php $tysuer_Table='%pre%ytuser'; //定义数据表名 $tysuer_DataInfo=array( 'ID'=>array('tc_id','integer','',0), 'Uid'=>array('tc_uid','integer','',0), 'Oid'=>array('tc_oid','string',255,''), 'Price'=>array('tc_Price','integer','',0), 'Vipendtime'=>array('tc_Vipendtime','integer','',0), );
然后在插件的include.php文件内引用即可
include.php
<?php DefinePluginFilter('Filter_Plugin_RegPage_RegSucceed'); #用户中心插件 include 'usertable.php';
创建表存用户数据
include.php
function YtUser_CreateTable(){ global $zbp; $s=$zbp->db->sql->CreateTable($GLOBALS['tysuer_Table'],$GLOBALS['tysuer_DataInfo']); $zbp->db->QueryMulit($s); $s=$zbp->db->sql->CreateTable($GLOBALS['tyactivate_Table'],$GLOBALS['tyactivate_DataInfo']); $zbp->db->QueryMulit($s); $s=$zbp->db->sql->CreateTable($GLOBALS['typrepaid_Table'],$GLOBALS['typrepaid_DataInfo']); $zbp->db->QueryMulit($s); $s=$zbp->db->sql->CreateTable($GLOBALS['YtUser_buy_Table'],$GLOBALS['YtUser_buy_DataInfo']); $zbp->db->QueryMulit($s); }
注意:
数据库
必须使用$zbp->db->xxx执行SQL语句;
涉及到表的时候必须用$table调用;
建表必须在$datainfo和$table内注册;
不使用$zbp->db->sql而自行拼接SQL语句,需同时支持MySQL和SQLite数据库;
不对系统的数据表的结构作任何修改。
不得使用MySQL的ORDER BY rand()
相关资料: