SQLyog如何创建数据库,详细教程,SQLyog如何创建数据库,你知道怎么操作吗?下面将详细介绍......
php导入excel到mysql的方法
前面介绍了怎样导出excel,现在介绍怎样导入excel,这里需要用到PHPExcel,可导入office2003 、office2007的xls和xlsx格式。
工具/原料
- PHPExcel插件
- excel文件,php编辑器
方法/步骤
下载PHPExcel,解压到目录PHPExcel。
引用连接数据库文件和PHPExcel文件,在php文件上面加上代码
include("conn.php");
require_once './PHPExcel/PHPExcel.php';
require_once './PHPExcel/PHPExcel/IOFactory.php';
require_once './PHPExcel/PHPExcel/Reader/Excel5.php';
这里是导入excel2007 的xlsx格式,如果是2003格式可以把“excel2007”换成“Excel5",$excelpath是你的excel路径。
$objReader = PHPExcel_IOFactory::createReader('excel2007'); //use Excel5 for 2003 format
$excelpath='myexcel.xlsx';
$objPHPExcel = $objReader->load($excelpath);
$sheet = $objPHPExcel->哨脾getSheet(0);
$highestRow = $sheet->getHighestRow(); //取得总蹲仗行数
$highestColumn = $sheet->getHighestColumn(); //取得总列数
逐行循环读取excel,并加入分隔符。
for($j=2;$j=$highestRow;$j ) //从第二行开始读取数据
{
$str="";
for($k='A';$k=$highestColumn;$k ) //从A列读取数据
{
$str .=$objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue().'|*|';//读取单元格
}
$str=mb_convert_encoding($str,'GBK','auto');//根据自己编码修改
$strs = explode("|*|",$str);
// echo $str . "br />";
$sql = "insert into test (title,content,sn,num) values ('{$strs[0]}','{$strs[1]}','{$strs[2]}','{$strs[3]}')";
//echo $sql;
总攀宿 if(!mysql_query($sql,$conn))
{
echo 'excel err';
}
}
数据库连接文件conn.php,根据自己数据库填写
?php
$conn=mysql_connect("localhost","root","123456") or die("数据库服务器连接错误".mysql_error());
mysql_select_db("temp",$conn) or die("数据库访问错误".mysql_error());
mysql_query("set character set gb2312");
mysql_query("set names gb2312");
?>
导入效果图
全部代码,注释部分可以调试
?php
include("conn.php");
require_once './PHPExcel/PHPExcel.php';
require_once './PHPExcel/PHPExcel/IOFactory.php';
require_once './PHPExcel/PHPExcel/Reader/Excel5.php';
$objReader = PHPExcel_IOFactory::createReader('excel2007'); //use Excel5 for 2003 format
$excelpath='myexcel.xlsx';
$objPHPExcel = $objReader->load($excelpath);
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow(); //取得总行数
$highestColumn = $sheet->getHighestColumn(); //取得总列数
for($j=2;$j=$highestRow;$j ) //从第二行开始读取数据
{
$str="";
for($k='A';$k=$highestColumn;$k ) //从A列读取数据
{
$str .=$objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue().'|*|';//读取单元格
}
$str=mb_convert_encoding($str,'GBK','auto');//根据自己编码修改
$strs = explode("|*|",$str);
//echo $str . "br />";
//exit;
$sql = "insert into test (title,content,sn,num) values ('{$strs[0]}','{$strs[1]}','{$strs[2]}','{$strs[3]}')";
//echo $sql;
//exit;
if(!mysql_query($sql,$conn))
{
echo 'excel err';
}
}
?>
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!
标签: MYSQL
相关文章
- 详细阅读
- 详细阅读
-
如何处理'mysql' 不是内部或外部命令的报错详细阅读
如何处理mysql 不是内部或外部命令的报错,今天安装myql-5.7.23,想要从命令行中连接myql,结果出现如图报错。下面来写下,这种报错的解决方式:......
2023-03-16 500 MYSQL