服务器之家:专注于服务器技术及软件下载分享
分类导航

DEDECMS|帝国CMS|Discuz|PHPCMS|Wordpress|ZBLOG|ECSHOP|

服务器之家 - 建站程序 - DEDECMS - DedeCms批量写入数据的函数分析

DedeCms批量写入数据的函数分析

2019-06-16 13:20DEDECMS教程网 DEDECMS

这篇文章主要为大家介绍了DedeCms批量写入数据的函数,分析了函数的用法,对dedecms二次开发有一定参考借鉴价值,需要的朋友可以参考下

本文实例分析了DedeCms批量写入数据的函数。分享给大家供大家参考。具体分析如下:

dedecms如果是新闻与软件表我们只要操作三个表就可以了,如果我们要对批量插入的数据设置未设置状态只要在主表字段arcrank设置为-1就可以,下面看一个例子,代码如下:
 

复制代码
代码如下:
// 本类由系统自动生成,仅供测试用途 
class IndexAction extends Action { 
public function index(){ 
$id = $this->_get('id');
$endid = $this->_get('endid'); 
$typeid = 9;//写入的栏目 
$db = M();
if(!$id || !$endid){ 
$listend = $db->table('dede_archives')->limit(1)->order('id desc')->find(); 
exit('no id and endid id must start big from '.$listend['id']); //必须大于某id开始 

$list = $db->table('tb1')->where('status=0')->find();//查找待发布DB未发布的 
if($list){ 
$time=time(); 
$r1= $db->query("INSERT INTO `dede_arctiny` VALUES(".$id.", ".$typeid.", '0', 0, 1, ".$time.", ".$time.", 1)");//写入到织梦DB 
$data2['arcrank']=-1; 
$data2['title']=$list['title']; 
$data2['typeid']=$typeid; 
$data2['id']=$id;
$data2['pubdate']=$time; 
$data2['senddate']=$time; $data2['sortrank']=$time; 
$data2['mid']=1; 
$data2['dutyadmin']=1; 
$data2['weight']=1; 
$r2=$db->table('dede_archives')->add($data2); 
if($r2>0){//写入成功后写入附加表 
$r3= $db->query('INSERT INTO `dede_addonarticle` VALUES('.$id.', '.$typeid.', "'.$list['content'].'", "", "", "127.0.0.1")'); 
$r4 = $db->table('tb1')->where("id = ".$list['id'])->setField('status',1);//写入成功后标记为已发布 
if($r4){ 
$nextid = $id+1; 
//$this->redirect("index",array('id'=>$nextid)); //if($id=99999 || $id=88888) exit; 
echo 'ok '.$id; 
echo 'next '.$nextid; if($endid==$id) exit('
the end id!'); 
echo"<script>window.location.href='/Sphp/index.php?s=/Index/index/id/".$nextid."/endid/".$endid."'</script>"; 


//dump($r2); 
//dump($r3); 
exit; 
}else{
echo 'no article yet';


}

 

希望本文所述对大家的dedecms建站有所帮助。

延伸 · 阅读

精彩推荐