PHP实现客户端将CSV文件导入服务器数据库中

原创 2007年09月21日 12:48:00

//将文件另存为php文件,在服务器上运行,已测试通过。

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
 <title>Import CSV file to server</title>
</head> 
<body>   
    <form id="form1" name="form1" enctype="multipart/form-data" method="post" action="importcsv.php">
  <input type="file" name="upfile" size="20" />
  <input type="submit" name="Submit" value="Import" />[*.CSV]
 </form>
</body>
</html>
<?php
//*****************************************************************
//function:      import local CSV file to one table of database in server
//solve way:    copy local CSV file to server ,get the data from CSV file
//                   line by line ,then insert them into the table of database,
//                   at last,delete the file in server.
//author:       enjoyxp 2007-09-20
//******************************************************************

if($_POST['Submit']=='Import'){
    $type='application/vnd.ms-excel';        //set valid file type
 $file=$_FILES['upfile'];                 //get file
 copy($file['tmp_name'],$file['name']);      //copy local file to server
 $filename=$_FILES['upfile']['name']; 
 $handle = fopen("$filename","r");           //open file
 if($_FILES['upfile']['type']!=$type){
     echo "<script>alert('Error:file type doesn't match!');</script>";
  fclose($handle);                        //close file
  unlink($filename);                      //delete file
     exit;
    }
 $i=0;
 while ($data = fgetcsv($handle,1000,",")){ //read file line by line,each line explode by ','
  $i++;
     $num = count($data);                   //how many lines the file has
     $flag = false;
  for($n=0; $n < $num; $n++){      //judge each line whether is null
     if($data[$n] !=''){
    $flag = true;                     //if $null equal true,then  exist data
    break 1;                          //jump out of the first circle
     }
  }
  if($flag==true){
   if($i!='1'){                       //exclude the first line (title)
       $access_id = "root";
             $db_name   = "inv";
                @ $db = mysql_connect('localhost', $access_id, '831025') or
           die("Could not connect to database.");
          mysql_query("SET NAMES 'GBK'"); //display Chinese
             mysql_select_db($db_name);
    //insert into table test,get data with array data[] from CSV file
    $sql = "insert into test values ('".$data[0]."','".$data[1]."')";
    $result = mysql_query($sql);
   }
     } 
 }
 echo "<script>alert('Import succeed!');</script>";
 fclose($handle);               
 unlink($filename);             
}
?> 

前端之PHP基础(还有客户端、服务器、数据库交互基础)

因为本人对JS非常熟悉,所以学习PHP的基础知识比较容易,也是看了一些相关培训视频,做了一些笔记 这些笔记其实不那么重要,就是一些API而已,最重要的是理解客户端、服务器、数据库交互的方式,如下图: ...

php服务器开发之 app客户端首页接口开发(一) 概述及方案一:读取数据库方式开发首页接口

本篇博文主要内容:1.简述app客户端首页接口开发的三种方案                                  2.实例讲解 方案一:读取数据库方式开发首页接口 /****...

【Android】Android客户端使用okhttp上传文件php服务器

为了更好的在应对网络访问,最近学习了一下okhttp,感觉挺方便使用的,首先要使用okhttp,需要在项目中导入okhttp-x.x.x.jar   okhttputils-x_x_x.jar  ...

java客户端仿http传送文件到php服务器

如果是文件较小可以直接使用传参传递: java客户端代码: package senssic.demo; import java.io.BufferedReader; import java.io.D...
  • Senssic
  • Senssic
  • 2013年08月28日 02:06
  • 1464

Php 文件上传 ,服务器端代码和客户端代码

=============================客户端========================================== File Upload Form ...
  • wakice
  • wakice
  • 2017年02月13日 11:53
  • 158

PHP-Websockets 上传文件2 优化支持php socket客户端和websocket连接websocket服务器 以守护进程方式运行编码

WebsocketServer: users.php class WebSocketUser { public $socket; public $id; public $h...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP实现客户端将CSV文件导入服务器数据库中
举报原因:
原因补充:

(最多只允许输入30个字)