php导入excel文件入mysql数据库我们是需一借助一个phpexcel类文件了,有了这个类文件我们就可以快速简单的导入excel到mysql数据库中,下面来给大家整理一个例子,希望能对大家有帮助.
导入前我们需要先准备一个数据库,sql语句代码如下:
- /*
- Navicat MySQL Data Transfer
-
- Source Server : www.phpfensi.com localhost
- Source Server Version : 50133
- Source Host : localhost:3306
- Source Database : test
-
- Target Server Type : MYSQL
- Target Server Version : 50133
- File Encoding : 65001
-
- Date: 2011-10-11 14:11:38
- */
-
- SET FOREIGN_KEY_CHECKS=0;
-
-
-
- DROP TABLE IF EXISTS `execl`;
- CREATE TABLE `execl` (
- `id` int(11) NOT NULL AUTO_INCREMENT,
- `name` varchar(20) DEFAULT NULL,
- PRIMARY KEY (`id`)
- ) ENGINE=MyISAM AUTO_INCREMENT=16 DEFAULT CHARSET=latin1;
-
-
-
-
- INSERT INTO `execl` VALUES ('14', 'jim');
- INSERT INTO `execl` VALUES ('15', 'taurus');
php处理程序,在这里我们需要使用一个phpexcel类文件了,这个可以百度搜索下载,代码如下:
- <?php
- if($_FILES['execl']['name']){
- $db = mysql_connect('localhost','root','');
- mysql_select_db('test');
- mysql_query('set names gbk');
- require_once 'reader.php';
- $data = new Spreadsheet_Excel_Reader();
- $data->setOutputEncoding('CP936');
- $data->read($_FILES['execl']['name']);
- error_reporting(E_ALL ^ E_NOTICE);
- $sql = "";
- for($i=1;$i<=$data->sheets[0]['numRows'];$i++)
- {
- if($data->sheets[0]['cells'][$i][1]!=""){
- $sql = "INSERT INTO `execl`(`name`)values('".$data->sheets[0]['cells'][$i][2]."');";
- if(mysql_query($sql)){
-
- echo '成功';
- }else{
- die('失败');
- }
- }
- }
- }
- ?>
- <head>
- </head>
- <body>
- <form action="" method="post" enctype="multipart/form-data">
- <input type="file" name="execl" />
- <input type="submit" value="导入数据" />
- </form>
- </body>
|