本文目录一览:
- 1、excel如何导入mysql
- 2、phpexcel导入excel到mysql,,坐等
- 3、如何通过PHP将excel的数据导入MySQL中
- 4、用phpexcel把excel中的数据导入到MYSQL中日期发生错误如何解决
- 5、做好的execl 表格如何通过PHP导入到mysql保存
- 6、求关于php excel导入大数据到mysql的解决办法
excel如何导入mysql
第一步:建立数据库和数据表(按照自己的Excel数据设立字段)。
[sql] view plain copy print?
CREATE DATABASE php_excel;
USE php_excel;
CREATE TABLE IF NOT EXISTS php_excel(
id int(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
gid varchar(20) NOT NULL,
stu_no varchar(20) NOT NULL,
name varchar(45) NOT NULL,
age int(4) NOT NULL
)ENGINE=MyISAM DEFAULT CHARSET=utf8;
第二步:前台index.php文件。
[html] view plain copy print?
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""
html xmlns=""
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
titlephpexcel导入excel数据到MYSQL数据库/title
/head
body
form name="frm1" action="insertdb.php" method="post" enctype="multipart/form-data"
input name="filename" type="file" /
input name="submit" type="submit" value="import" /
/form
/body
/html
第三步:向数据库插入数据的insertdb.php文件。
[php] view plain copy print?
session_start();
header("Content-type:text/html;charset:utf-8");
//全局变量
$succ_result=0;
$error_result=0;
$file=$_FILES['filename'];
$max_size="2000000"; //最大文件限制(单位:byte)
$fname=$file['name'];
$ftype=strtolower(substr(strrchr($fname,'.'),1));
//文件格式
$uploadfile=$file['tmp_name'];
if($_SERVER['REQUEST_METHOD']=='POST'){
if(is_uploaded_file($uploadfile)){
if($file['size']$max_size){
echo "Import file is too large";
exit;
}
if($ftype!='xls'){
echo "Import file type is error";
exit;
}
}else{
echo "The file is not empty!";
exit;
}
}
require("./conn.php"); //连接mysql数据库
//调用phpexcel类库
require_once 'PHPExcel.php';
require_once 'PHPExcel\IOFactory.php';
require_once 'PHPExcel\Reader\Excel5.php';
$objReader = PHPExcel_IOFactory::createReader('Excel5');//use excel2007 for 2007 format
$objPHPExcel = $objReader-load($uploadfile);
$sheet = $objPHPExcel-getSheet(0);
$highestRow = $sheet-getHighestRow(); // 取得总行数
$highestColumn = $sheet-getHighestColumn(); // 取得总列数
$arr_result=array();
$strs=array();
for($j=2;$j=$highestRow;$j++)
{
unset($arr_result);
unset($strs);
for($k='A';$k= $highestColumn;$k++)
{
//读取单元格
$arr_result .= $objPHPExcel-getActiveSheet()-getCell("$k$j")-getValue().',';
}
$strs=explode(",",$arr_result);
$sql="insert into php_excel(gid,stu_no,name,age) values ($strs[0],'$strs[1]','$strs[2]',$strs[3])";
echo $sql."br/";
mysql_query("set names utf8");
$result=mysql_query($sql) or die("执行错误");
$insert_num=mysql_affected_rows();
if($insert_num0){
$succ_result+=1;
}else{
$error_result+=1;
}
}
echo "插入成功".$succ_result."条数据!!!br";
echo "插入失败".$error_result."条数据!!!";
其中conn.php代码如下:
[php] view plain copy print?
$mysql=mysql_connect("localhost","root","") or die("数据库连接失败!");
mysql_select_db("php_excel",$mysql);
mysql_query("set names utf8");
我的导入效果如下:
至此,从Excel文件读取数据批量导入到Mysql数据库完成。
phpexcel导入excel到mysql,,坐等
这个嘛,需要多次调试的啊!
vendor("PHPExcel.PHPExcel");//这里是导入PHPexcl,我用的thinkphp框架!其他框架自己导入文件
$file_name=excel文件路径;//这里是EXCEL文件路径
$objReader = PHPExcel_IOFactory::createReader('Excel5');//不要管这行
$objPHPExcel = $objReader-load($file_name,$encode='utf-8');//把EXCEL转化为对象
$sheet = $objPHPExcel-getSheet(0);//取得excel工作sheet;
$highestRow = $sheet-getHighestRow(); // 取得总行数
$highestColumn = $sheet-getHighestColumn(); // 取得总列数
for($i=2;$i=$highestRow;$i++){
$data['数据库字段名'] =$objPHPExcel-getActiveSheet()-getCell("A".$i)-getValue();//ABCD.....就是excel对应的ABCDEF......-phpexcel导入mysql
$data['数据库字段名'] =$objPHPExcel-getActiveSheet()-getCell("B".$i)-getValue();//ABCD.....就是excel对应的ABCDEF......-phpexcel导入mysql
$data['数据库字段名'] =$objPHPExcel-getActiveSheet()-getCell("C".$i)-getValue();//ABCD.....就是excel对应的ABCDEF......-phpexcel导入mysql
$data['数据库字段名'] =$objPHPExcel-getActiveSheet()-getCell("D".$i)-getValue();//ABCD.....就是excel对应的ABCDEF......-phpexcel导入mysql
$data['数据库字段名'] =$objPHPExcel-getActiveSheet()-getCell("E".$i)-getValue();//ABCD.....就是excel对应的ABCDEF......-phpexcel导入mysql
$data['数据库字段名'] =$objPHPExcel-getActiveSheet()-getCell("F".$i)-getValue();//ABCD.....就是excel对应的ABCDEF......-phpexcel导入mysql
$data['数据库字段名'] =$objPHPExcel-getActiveSheet()-getCell("G".$i)-getValue();//ABCD.....就是excel对应的ABCDEF......-phpexcel导入mysql
M('Users')-add($data);//thinkphp的存储方法(具体你用什么框架或者原生代码,自己去insert,数据格式自己构造)
}
如何通过PHP将excel的数据导入MySQL中
在开发PHP程序时,很多时候我们会有将数据批量导入数据库的需求,如学生信息批量添加到数据库中,而事先用excel编排好,对excel实行操作,便是我们比较常用的选择方式。
在对excel的操作中,phpExcelReade便是很多人的共同选择。在具体实现中,我们可以以文件上传方式将excel文件上传到服务器中的某个位置,通过以下操作将excel中的数据导入到数据库后,在将上传的文件删除即可。转载,仅供参考。-phpexcel导入mysql
用phpexcel把excel中的数据导入到MYSQL中日期发生错误如何解决
授之以鱼不如授之以渔,我教你个思路。
步骤:
1、将一个带有日期字段的表导出成EXCEL文件。
2、打开EXCEL文件,查看日期的在表格中的存储方式。
3、模仿这种存储方式,将原来的数据修改成这种存储方式。
4、将EXCEL进行导入MYSQL中
5、查看数据是否符合要求。
备注:可以目标表可以的日期字段修改为varchar格式试一试。最后祝楼主工作顺利。
做好的execl 表格如何通过PHP导入到mysql保存
这个问题我遇到过:1.如果实在不想用第三方控件也是可以的,先将excle的.xls文件转换为cvs格式,上传至服务器,然后通过将列转换为数组,如果一列对应一类数据最理想,但如果一列对几类数据就比较复杂,多维数组减化,比较麻烦,最后我选择了第二种方式。 2.就是楼上说的phpExcelReader,非常方便。一个数据配置文件先上传.xls文件require_once-phpexcel导入mysql
'Excel/reader.php';//引用库文件 $data
=
new
Spreadsheet_Excel_Reader();//新建一个excel文件处理
$data-setOutputEncoding('gbk');
$data-read($uploadfile);
error_reporting(E_ALL
^
E_NOTICE);
for
($i
=
1;
$i
=
$data-sheets[0]['numRows'];
$i++)
{
$amm1=
array($data-sheets[0]['cells'][$i][1]);//EXCEL表格第一列,数组array1
$arr[$i]['datetime']=$amm1[0];
$amm2=array($data-sheets[0]['cells'][$i][2]);
$arr[$i]['num']=$amm2[0];
$amm3
=
array($data-sheets[0]['cells'][$i][3]);
$arr[$i]['name']=$amm3[0];
$amm4
=
array($data-sheets[0]['cells'][$i][4]);
$arr[$i]['money']=$amm4[0];
}
array_shift($arr);
//将的标题剔除
求关于php excel导入大数据到mysql的解决办法
下载 PHPExcel
require_once( './PHPExcel/IOFactory.php');
$filePath = 'D:/xxx.xlsx'; //excel 文件名
$objReader = new PHPExcel_Reader_Excel2007(); //具体查看(Documentation/Examples/Reader/exampleReader01.php)-phpexcel导入mysql
$objPHPExcel = $objReader-load($filePath);
$sheetData = $objPHPExcel-getActiveSheet()-toArray(null,true,true,true);
$insql = 'insert into 表名(x,x,x) valeus';
//遍历数组 $sheetData
//如果有标题 先删除 unset($sheetData[1]);
foreach($sheetData as $k = $data){
$insql .= '('.$data['A'].','.$data['B'].','.$data['C'].'),';
//一次插入100条数据 减少数据库压力
if(($k+1 / 100) == 0){
$insql = rtrim($insql,',').';'; //将最后的逗号替换成分好
//插入数据库 并且重置 字符串 $insql
//或者保存到文件中 利用source 命令插入数据库
}
}