设为首页 收藏本站
查看: 786|回复: 0

[经验分享] php上传excel并将excel中的内容插入到数据库中

[复制链接]

尚未签到

发表于 2017-4-13 10:12:07 | 显示全部楼层 |阅读模式
  在修改公司网站项目中涉及到了把excel文件上传到后台并处理,经过学习总结出下面方法,记录一下。

<form action="http://xx.xx.com/tet.php" method="post" enctype="multipart/form-data">
<input type="file" id="file" name="file" style="display:none">
<input type="button"  value="选择附件">
<input type="submit" value="提交" />
</form>
  通过上面的代码,会弹出对话框,选择要上传的文件excel文件(方法中没有添加判断文件类型)。
  tet.php文件如下

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
#test{height:expression(eval(document.documentElement.clientWidth)); background:#999;}
</style>

</head>
<body>
<?php
//print_r($_FILES);
if(move_uploaded_file($_FILES['file']['tmp_name'],'./uploads/up.xls'))//上传文件,成功返回true
{echo '上传成功';
}
else
{echo '上传失败';}
$db_server="localhost";
$db_user_name="xx";
$db_user_password='xx';
$db_name="xx";//表名
$conn=mysql_connect($db_server,$db_user_name,$db_user_password);
mysql_query("SET NAMES UTF8");
mysql_select_db($db_name, $conn);
require_once 'excel_reader2.php';//引用文件
$data = new Spreadsheet_Excel_Reader();
//设置文本输出编码
$data->setOutputEncoding('UTF-8');
$data->read("./uploads/up.xls");//读取excel
$arr=array();
$arb=array();
$wmark=0;
$name;
$email;
$post;//职位
$written='0';
$exam;//
$permission='0';
$ip='xx';
$date='xx';
for ($i = 2; $i <= $data->sheets[0]['numRows']; $i++) {
//显示每个单元格内容
$arr[$data->sheets[0]['cells'][$i][1]]=$data->sheets[0]['cells'][$i][2];
$arb[$data->sheets[0]['cells'][$i][1]]=$data->sheets[0]['cells'][$i][3];
}
foreach($arr as $k => $v){//遍历数组修改数据库
$existsql = "SELECT email FROM xx WHERE email='$k' LIMIT 1";
$exist = mysql_query($existsql);
$row = mysql_fetch_array($exist, MYSQL_ASSOC);
if (!mysql_num_rows($exist))  //判断数据是否存在
{  
if(!empty($k))//不存在,插入
{
$dsql = "INSERT INTO kids_user (name,email,post,written,exam,ip,date) VALUES ('$v','$k','$post','$written','$exam','$ip',NOW())";
$email = mysql_query($dsql);
//echo $dsql;
}
foreach($arb as $kl => $vl){
$existsql = "SELECT email FROM xx WHERE email='$kl' LIMIT 1";
$exist = mysql_query($existsql);
if($exist){
$emailadd = "UPDATE xx SET post='$vl' WHERE email='$kl'";
$email = mysql_query($emailadd);
}
unlink('./uploads/up.xls');//删除文件
}
echo "\n";
echo '添加成功';
?>
<meta http-equiv="Refresh" content="2; url=http://xxx.xxx.com" /><!--2秒后跳转某页面-->
</body>
</html>

  文件中的excel_reader2.php文件在附件中(改文件必须存在)。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-364296-1-1.html 上篇帖子: php获取客户端浏览器以及操作系统信息的方法 下篇帖子: php开发微信公众账号开发包开发教程三之请求消息封装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表