把excel中的数据导入到数据库
import.php
<?php
header("Content-Type:text/html;charset=utf-8");
echo '<html>
<body> <form action="import.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="Submit" />
</form> </body>
</html>';
if(@$_FILES["file"]){
var_dump(@$_FILES["file"]);
$path="upload/" . $_FILES["file"]["name"];
//把上传的文件
move_uploaded_file($_FILES["file"]["tmp_name"],$path);
$dir = $path; // $dir ='1.xlsx';
/** PHPExcel_IOFactory */
require_once 'PHPExcel_1.8.0_doc/Classes/PHPExcel.php'; if (!file_exists("$dir")) {
exit("没有发现excel文件!");
} //获取扩展名
function getExtension($filename)
{
$myext = substr($filename, strrpos($filename, '.'));
return str_replace('.', '', $myext);
} $excel_ext = getExtension($dir);
if ($excel_ext == "xlsx") {
$reader = PHPExcel_IOFactory::createReader('Excel2007'); //设置以Excel7格式(Excel97-2007工作簿)
} else {
$reader = PHPExcel_IOFactory::createReader('Excel5'); //设置以Excel5格式(Excel97-2003工作簿)
} $PHPExcel = $reader->load("$dir"); // 载入excel文件
$sheet = $PHPExcel->getSheet(0); // 读取第一個工作表
$highestRow = $sheet->getHighestRow(); // 取得总行数
$highestColumm = $sheet->getHighestColumn(); // 取得总列数 //1.导入配置文件
//require("conf/dbconfig.php");
define('HOST', 'localhost');
define('USER', 'root');
define('PASS', '');
define('DBNAME', 'mssc');
//2.连接MySQL、并选择数据库
$link = @mysql_connect(HOST, USER, PASS) or die("数据库连接失败!"); mysql_select_db(DBNAME, $link); for ($j = 2; $j <= $highestRow; $j++) {
$telephone = $PHPExcel->getActiveSheet()->getCell("B" . $j)->getValue();//获取B列的值
//过滤不正确的手机号
if (preg_match("/^1[34578]\d{9}$/", $telephone)) { $tel[] = $telephone; } else { $filter[] = $telephone;
} } //分割数组为字符串 //组装成字符串
$mess = '('.implode("),(", $tel).')';
//成功统计
$cgsum = count($tel);
//失败统计
$sbsum = count($filter);
mysql_query("INSERT INTO onethink_member (tel) VALUES ".$mess); // //释放工作表对象
unset($sheet);
//释放Excel文件对象
unset($PHPExcel);
//返回数据
//删除文件
unlink($dir);
exit('更新数据库成功');
} ?>
效果图:

把excel中的数据导入到数据库的更多相关文章
- 使用Python将Excel中的数据导入到MySQL
使用Python将Excel中的数据导入到MySQL 工具 Python 2.7 xlrd MySQLdb 安装 Python 对于不同的系统安装方式不同,Windows平台有exe安装包,Ubunt ...
- jsp+servlet上传excel并将数据导入到数据库表的实现方法
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- postman上传excel,java后台读取excel生成到指定位置进行备份,并且把excel中的数据添加到数据库
最近要做个前端网页上传excel,数据直接添加到数据库的功能..在此写个读取excel的demo. 首先新建springboot的web项目 导包,读取excel可以用poi也可以用jxl,这里本文用 ...
- 用ttBulkCp把excel中的数据导入到timesten数据库中
最近要做数据预处理,需要用到数据库.而且是以前从来没听说过的TimesTen. 首要目标是要把Excel里的数据,导入到TimesTen数据库中.而TimesTen在win10里用不了,于是我就在虚拟 ...
- 使用openpyxl模块将Excel中的数据导入数据库
这里将不介绍openpyxl模块的详细操作. 主要就是记录一个使用openpyxl模块将Excel表格的数据导入数据库中的实例. from openpyxl import load_workbook ...
- excel中的数据导入oracle方法
SQL_loader批量上传数据 1. 注释 在工作中,很多时候会遇到如下情况:需要将excel中的数据批量上传到ORACLE表中.如果是小数据量,如几十条至几百条,那么用plsql dev工具 ...
- 将Excel表中的数据导入到数据库
网上查到的有参考价值的就一家,自己调试发现可行.感谢原创文章:将Excel中数据导入数据库(一) using System; using System.Collections.Generic; usi ...
- 用JDBC把Excel中的数据导入到Mysql数据库中
步骤:0.在Mysql数据库中先建好table 1.从Excel表格读数据 2.用JDBC连接Mysql数据库 3.把读出的数据导入到Mysql数据库的相应表中 其中,步骤0的table我是先在Mys ...
- sqlserver怎么将excel表的数据导入到数据库中
在数据库初始阶段,我们有些数据在EXCEL中做好之后,需要将EXCEL对应列名(导入后对应数据库表的字段名),对应sheet(改名为导入数据库之后的表名)导入指定数据库, 相当于导入一张表的整个数据. ...
随机推荐
- java面试每日一题10
题目:利用递归方法求5! public class Recursion { public static void main(String args[]) throws NumberFormatExce ...
- 在Java中导出word、excel格式文件时JSP页面头的设置
我们在JSP中往往会把一些表格里的东西需要导出到本地,一般都是导成word.excel格式的文件.这只需要在JSP页面头设置及在<head></head>标签中添加下面的代码: ...
- python: shutil模块 -拷贝文件
import shutil #拷贝文件 #存在文档1文件 shutil.copyfile('文档1','新文件') 随机验证码-4位 import random random_code='' for ...
- [团队项目]sprint3 & 团队贡献分。
希望各组认真准备,拿出最好的阵容最好的状态,展示一学期的学习与工作成果. 各组注意完成sprint3的博客,写上团队贡献分. 将演示PPT(如果有)和代码上传到github. 截止日期:2016.6. ...
- 如果在遨游浏览器里设置Bing(必应)搜索为默认搜索
今天刚装了遨游浏览器,发现搜索引擎列表里没有Bing(必应)搜索的选项,就自己DIY了下. 步骤: 1. 在遨游搜索引擎列表管理里,添加一个新的搜索引擎项: Name:填写上”Bing(必应)“ (这 ...
- 水流雨渍shader
战神斯巴达之魂的雨渍做的很逼真,尝试了下,似乎是差不多了,整体欠缺不少 普通平面: 环形流动: 河流: shader实现,3层加上一个偏移层 圆形的雨渍流动和河流要重新展一下UV
- acdream Divide Sum
Divide Sum Time Limit: 2000/1000MS (Java/Others)Memory Limit: 128000/64000KB (Java/Others) SubmitSta ...
- Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined) B
Description You are given a table consisting of n rows and m columns. Numbers in each row form a per ...
- Educational Codeforces Round 16 A
Description he only king stands on the standard chess board. You are given his position in format &q ...
- java提高篇---Iterator
迭代对于我们搞Java的来说绝对不陌生.我们常常使用JDK提供的迭代接口进行Java集合的迭代. Iterator iterator = list.iterator(); while(iterator ...