第一个,前端不是用什么控件就可以,html+css是基础,js可以让前端更加人性化和体验更加友好;
第四个,对上传的文件要进行分类存放和重命名,以免重名的文件被覆盖掉;
建议:像这样的网站,牵扯到会员系统,文件管理系统等,如果单独开发,必须有非常好的php编程经验,最好是找现成的开源系统进行二次开发或者学习一下啊.很少有这种专门针对网盘开发的教程,你可以找会员系统开发的教程和php文件管理的教程学习.
先整个最基础的代码,理解了这个,后面的就非常简单了
import("Org.Util.PHPExcel");
import("Org.Util.PHPExcel.IOFactory");
$sheet?=?$objPHPExcel-getSheet(0);
$highestRow?=?$sheet-getHighestRow();?//?取得总行数
$highestColumn?=?$sheet-getHighestColumn();?//?取得总列数
表格内容:
再给大家整个一点难度的,先说下思路.
①上传excel文件,得到它的地址
实例代码演示:
public?function?upload(){
$files?=?$_FILES['exl'];
//?exl格式,否则重新上传
if($files['type']?!='application/vnd.ms-excel'){
$this-error('不是Excel文件,请重新上传');?
}
//?上传
$upload?=?new?\Think\Upload();//?实例化上传类
$upload-exts?=??array('xls');//?设置附件上传类型
$upload-rootPath?=??'./Upload/';?//?设置附件上传根目录
$upload-savePath?=??'excel/';?//?设置附件上传(子)目录
//$upload-subName?=??array('date',?'Ym');
$upload-subName?=??'';
//?上传文件?
$info?=?$upload-upload();
$file_name?=?$upload-rootPath.$info['exl']['savepath'].$info['exl']['savename'];
$exl?=?$this-import_exl($file_name);
//?去掉第exl表格中第一行
unset($exl[0]);
//?清理空数组
foreach($exl?as?$k=$v){
if(empty($v)){
unset($exl[$k]);
}?
};
//?重新排序
sort($exl);
$count?=?count($exl);
//?检测表格导入成功后,是否有数据生成
if($count1){
$this-error('未检测到有效数据');?
//?开始组合数据
$goods[$k]['goods_sn']?=?$v;
//?查询数据库
$where['goods_sn']?=?array('like','%'.$v.'%');
$res?=?M('goods')-where($where)-find();
$goods[$k]['goods_name']?=?$res['goods_name'];
$goods[$k]['goods_thumb']?=?$res['goods_thumb'];
if($res){
//?是否匹配成功?
$goods[$k]['is_match']?=?'1';
$f?+=?1;
}else{
//?匹配失败
$goods[$k]['is_match']?=?'0';
$w?+=?1;
//?实例化数据
$this-assign('goods',$goods);
//print_r($f);
//?统计结果
$total['count']?=?$count;
$total['success']?=?$f;
$total['error']?=?$w;
$this-assign('total',$total);
//?删除Excel文件
unlink($file_name);
/*?处理上传exl数据
*?$file_name?文件路径
*/
public?function?import_exl($file_name){
import("Org.Util.PHPExcel");?//?这里不能漏掉
for($i=1;$i$highestRow+1;$i++){
$data[]?=?$objPHPExcel-getActiveSheet()-getCell('A'.$i)-getValue();?
return?$data;?
有问题一定要及时弄清楚
①.、首先在 index.js中想写逻辑代码.