欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php导入csv到mysql数据库

程序员文章站 2022-05-29 15:22:27
...
复制代码

2,执行页面insertdb.php

  1. session_start();

  2. header("Content-type:text/html;charset:utf-8");
  3. //全局变量

  4. $file=$_FILES['filename'];
  5. $max_size="2000000"; //最大文件限制(单位:byte)
  6. $fname=$file['name'];
  7. $ftype=strtolower(substr(strrchr($fname,'.'),1));
  8. //文件格式
  9. $uploadfile=$file['tmp_name'];
  10. if($_SERVER['REQUEST_METHOD']=='POST'){
  11. if(is_uploaded_file($uploadfile)){
  12. if($file['size']>$max_size){
  13. echo "Import file is too large";
  14. exit;
  15. }
  16. if($ftype!='csv'){
  17. echo "Import file type is error";
  18. exit;
  19. }
  20. }else{
  21. echo "The file is not empty!";
  22. exit;
  23. }
  24. }
  25. require("./conn.php"); //连接mysql数据库

  26. $row=0;
  27. $filename=$file['tmp_name'];
  28. $handle=fopen($filename,'r');
  29. while(!feof($handle) && $data=fgetcsv($handle,1000,',')){
  30. $arr_result=array();
  31. if($row==0){
  32. $row++;
  33. continue;
  34. }
  35. if($row>0 && !empty($data)){
  36. $num=count($data);
  37. for($i=0;$i array_push($arr_result,$data[$i]);
  38. }
  39. $name = iconv('gb2312','utf-8',$arr_result[1]);

  40. $sex = iconv('gb2312','utf-8',$arr_result[2]);
  41. $sql="insert into student(typeId,name,sex,age) value($arr_result[0],'$name','$sex',$arr_result[3])";
  42. //echo $sql;
  43. mysql_query("set names utf8");
  44. $result=mysql_query($sql);
  45. if($result){
  46. echo "插入成功!!!";
  47. }else{
  48. echo "插入失败!!!";
  49. }
  50. }
  51. $row++;
  52. }
  53. fclose($handle);
  54. ?>
复制代码