| 
 | 
 
 
本文实例分析了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"";   
                }   
            }   
            //dump($r2);   
            //dump($r3);   
            exit;   
        }else{ 
 echo 'no article yet'; 
 }   
    }   
} 
希望本文所述对大家的dedecms建站有所帮助。 
 |   
 
 
 
 |