好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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 ( '<br>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批量写入数据的函数 - DeDecms的详细内容...

  阅读:58次