PHPexcel导入到MySql方法

 1 <?php
 2 if($_POST['submit']){
 3         require_once('PHPExcel.php'); 
 4         mysql_connect("localhost","root","admin") or die("连接数据库服务器失败!");
 5         mysql_select_db("test") or die("没有您选择的数据库!");
 6         mysql_set_charset("utf8");
 7         if ($_FILES["file"]["error"] > 0){
 8             echo "Error: " . $_FILES["file"]["error"] . "<br />";
 9         }
10         $old_name_arr=explode(".", $_FILES["file"]["name"]);
11         $flies_new_name=md5(time()).".".$old_name_arr[1];
12         if(move_uploaded_file($_FILES["file"]["tmp_name"],"upload/" . $flies_new_name)){
13             $url="upload/" . $flies_new_name;          //上传的excel文件路径
14         }else{
15             echo "上传失败";
16         }
17 
18         $PHPExcel = new PHPExcel(); 
19         $PHPReader = new PHPExcel_Reader_Excel5(); 
20         $PHPExcel = $PHPReader->load($url);                //读取excel文件
21         $currentSheet = $PHPExcel->getSheet(0);         //读取excel文件中的第一个工作表
22         $allColumn = $currentSheet->getHighestColumn(); //取得最大的列号
23         $allRow = $currentSheet->getHighestRow();       //取得一共有多少行 
24         for($r=2;$r<=$allRow;$r++){                     //$r=2 从第二行开始输出,excel中第一行为列名,每循环一行,执行一条sql
25             for($c="A";$c<=$allColumn;$c++){            //循环列
26                 $value .= $PHPExcel->getActiveSheet()->getCell("$c$r")->getValue().'//';  
                                              //循环获取整行的值,并将值保存到字符串$value中 27 //iconv('utf-8','gbk',"") 解决乱码 28 } 29 $value_arr = explode("//",$value); //将字符串$value 通过explode() 分割成数组 30 if($value_arr[0]=="1"){ //判断excel字段,使用增加sql 31 $sql = "INSERT INTO test (t_contet) VALUES ('".$value_arr[2]."')"; 32 } 33 if($value_arr[0]=="2"){ //判断excel字段,使用修改sql 34 $sql = "UPDATE test SET t_contet ='".$value_arr[2]."' WHERE id='".$value_arr[1]."'"; 35 } 36 if($value_arr[0]=="3"){ //判断excel字段,使用删除sql 37 $sql = "DELETE FROM test WHERE id= '".$value_arr[1]."'"; 38 } 39 $result = mysql_query($sql); 40 if($result){ //判断sql运行结果 41 $value=""; 42 }else{ 43 $f="fail"; 44 } 45 } 46 if($f==""&&unlink($url)){ //若f有值,说明有未成功的sql语句 47 echo "操作成功"; 48 }else{ 49 echo "操作失败"; 50 $f=""; 51 } 52 53 } 54 ?>
 1 <form name="form2" method="post" enctype="multipart/form-data">
 2 <input type="hidden" name="leadExcel" value="true">
 3 <table align="center" width="90%" border="0">
 4 <tr>
 5 <td>
 6 <input type="file" name="file"><input type="submit" name="submit" value="导入数据">
 7 </td>
 8 </tr>
 9 </table>
10 </form>

 

posted @ 2013-07-18 10:12  lussen  阅读(490)  评论(0)    收藏  举报