| 收藏本站 | 关于我们
首页 免费模板 收费模板 部分案例 分类模板 地方门户 二次修改 服务定制 酷站欣赏 设计学院 特效代码 字体下载
当前位置:首页 >> 二次修改
将Excel数据导入到P8栏目中,支持自定义模型
发布时间:2014-03-29 11:48:25
标签Tags:Excel 模型 字段
原创作者:suliangben
以下是步骤,大家可以相互学习一下:

任务:将Excel表的数据相应导入到,自己新建的一个模型栏目当中。

分析:分析表,共涉及如下三张表:
    site_article
    site_article_content_107
    site_reply

难点:若PHP直接读取Excel文档,再将数据插入到数据库比较麻烦,数据量大的话,一般不能导入。(本人试过多种读XLS的php类)

难点解决:
                   一、直接用Excel文档的“另存为”功能,将表另存为“CSV”格式,全部默认。
                   二、使用PHP自带的fgetcsv()函数读取数据,放个循环遍历的示例:
复制代码
$row=1;
if (($handle = fopen("zb.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        for ($c=0; $c < $num; $c++) {
            echo $data[$c] . "<br />\n";
        }
    }
//    fclose($handle);






总结:对三张表的插入新数据,一定要注意aid rid 等,自己看看数据表的数据就可以理解。





复制代码
<?php
require("../global.php");
$said=107;//开始aid号
$maid=2;//开始模型表id, article_content_107
$ffid=222;//是插入哪个栏目
if (($handle = fopen("zb.csv", "r")) !== FALSE) {$i=1;
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
                $db->query("INSERT INTO `yl`.`site_article` (`aid`, `title`, `smalltitle`, `fid`, `mid`, `fname`, `special_id`, `bak_id`, `info`, `hits`, `pages`, `comments`, `posttime`, `list`, `uid`, `username`, `author`, `copyfrom`, `copyfromurl`, `titlecolor`, `fonttype`, `titleicon`, `picurl`, `ispic`, `yz`, `yzer`, `yztime`, `levels`, `levelstime`, `keywords`, `jumpurl`, `iframeurl`, `style`, `template`, `target`, `ip`, `lastfid`, `money`, `buyuser`, `passwd`, `allowdown`, `allowview`, `editer`, `edittime`, `begintime`, `endtime`, `description`, `lastview`, `digg_num`, `digg_time`, `forbidcomment`, `ifvote`, `heart`, `htmlname`) VALUES ('".$said."', '$data[5]$data[17]采购项目', '', '$ffid', '107', '招标投标', '0', '0', '0', '7', '1', '0', '1279205960', '1279205960', '1', '栏目编辑', '', '', '', '', '0', '0', '', '0', '1', '', '0', '0', '0', '', '', '', '', 'a:3:{s:4:\"head\";s:0:\"\";s:4:\"foot\";s:0:\"\";s:8:\"bencandy\";s:0:\"\";}', '0', '', '0', '0', '', '', '', '', '', '1279550943', '0', '0', '', '1279549173', '0', '0', '0', '0', '', '')");
                
                
                $db->query("
                INSERT INTO `yl`.`site_article_content_107` (`id`, `aid`, `rid`, `fid`, `uid`, `my_126`, `my_193`, `my_396`, `my_51`, `my_236`, `my_270`, `my_657`, `my_128`, `my_890`, `my_744`, `my_136`, `my_834`, `my_310`, `my_458`, `my_799`, `my_766`, `my_211`, `my_756`, `my_118`, `my_17`, `my_314`) VALUES ('".$maid."', '".$said."', '".$said."', '$ffid', '2', '$data[0]', '$data[1]', '$data[2]', '$data[3]', '$data[4]', '$data[5]', '$data[6]', '$data[7]', '$data[9]', '$data[10]', '$data[11]', '$data[12]', '$data[13]','$data[14]', '$data[15]', '$data[16]', '$data[17]', '$data[18]', '$data[19] ', '$data[20]', '$data[21]')
                ");
                
                
                
                $db->query(
                "
                INSERT INTO `yl`.`site_reply` (`rid`, `subhead`, `postdate`, `aid`, `fid`, `uid`, `topic`, `ishtml`, `download`, `content`, `orderid`) VALUES ('".$said."', '', '0', '".$said."', '$ffid', '1', '1', '1', '', '$data[22]', '0')
                ");
                
                
                $said++;
                $maid++;
echo "成功插入第 ".$i++." 条记录<br>";
    }
    fclose($handle);
}
echo "成功完成";
?>

点击率:1116
相关文章
网页特效代码
 服务流程 | 积分说明 | 使用说明 | 粤ICP备17004399号 电视直播 | QQ头像获取