thinkPHP3.2使用phpexcel导入文件到数据库

麻烦大家帮我看看哪儿有错误。十分感谢... 麻烦大家帮我看看哪儿有错误。十分感谢 展开
 我来答
匿名用户

2016-08-18
展开全部
这是我写过的,绝对能用,不行你再找我!!

<?php
if($_POST[sub]){

$uptypes=array('application/vnd.ms-excel','application/octet-stream');
$max_file_szie=20*pow(2,20); //上传的文件小于20MB
$destination_folder='../conn/'; //上传文件保存路径
if($_SERVER['REQUEST_METHOD']=='POST'){
if(!is_uploaded_file($_FILES['upfile']['tmp_name'])){

exit("<script> alert('文件不存在!');history.back();</script>");
}
if($max_file_szie<$_FILES['upfile']['size']){

exit("<script> alert('文件太大了!');history.back();</script>");
}
if(!in_array($_FILES['upfile']['type'],$uptypes)){
echo '文件类型不符合!'.$_FILES['upfile']['type'];
exit("<script> alert('文件类型不符合!');history.back();</script>");

}
if(!file_exists($destination_folder)){
mkdir($destination_folder);
}
$filename=$_FILES['upfile']['tmp_name'];
$image_size=getimagesize($filename);
$pinfo=pathinfo($_FILES['upfile']['name']); //文件路径信息
$ftype=$pinfo['extension']; //旧文件后缀名
$destination = $destination_folder.$_FILES['upfile']['name']; //新文件名称

if(file_exists($destination)&&$voerwrie !=true){

exit("<script> alert('同名文件已经存在了!');history.back();</script>");

}
//把上传的文件从临时文件夹移动到指定目录
if(!move_uploaded_file($filename,$destination)){

exit("<script> alert('移动文件出错了!');history.back();</script>");
}
$pinfo=pathinfo($destination);
$fname=$pinfo[basename];
$tpfile=$destination;//上传文件名

//-----------上传成功,导入数据star-----

$dataf=$tpfile;
if(!file_exists($dataf))
{
exit("文件不存在"); //文件不存在

}

$file = fopen("$dataf",'r');

while ($d = fgetcsv($file)) { //每次读取CSV里面的一行内容
//print_r($d); //此为一个数组,要获得每一个数据,访问数组下标即可
$type="`uid`='$d[0]' && name='$d[1]'";
$dsql=dbst($tableqz.message2,$type);

if(!$dsql){
$uid=trim($d[0]); //编号
$name=trim($d[1]); //客户名称
$type="(`uid`, `username`, `password`) VALUES (NULL, '$uid', '$name');";
dbin(hh_members,$type);
}
}

fclose($file);
unlink("$dataf");

}

//---上传end

exit("<script> alert('成功导入了所有数据!');history.back();</script>");
}
?>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式