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而已,最重要的是理解客户端、服务器、数据库交互的方式,如下图: ...

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

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

Asihttprequest上传文件到 appache服务器,脚本语言php(服务器端),客户端iphone oc

写在前面的话: 今天又弄了一上午,终于把纠结的问题搞定了,是这样的,我按 http://dancewithnet.com/2010/05/09/run-apache-php-mysql-in-mac...

实现PHP服务器+Android客户端(Retrofit+RxJava)第一天基础搭建

前段不知道怎么的android写着写着有些写不动了,于是开始捣鼓php,想要自己写个网站什么的装装逼,于是最近android就有些荒废了,说要解析fresco的也放了很久,之前在github上提问,昨...

Android通过Http连接MySQL 实现登陆/注册(数据库+服务器+客户端),androidmysql

新手开发APP登录界面

Android通过Http连接MySQL 实现登陆/注册(数据库+服务器+客户端)

转载自http://www.cnblogs.com/yzxk/p/4749440.html 一、开发环境的部署程序结构:Android+servlet+service+MySQL 仅供参考:能实现相关...
  • HZHXH
  • HZHXH
  • 2017-05-06 21:54
  • 140

建立数据库并实现TCP通信,客户端登陆服务器身份验证之服务端编程

第一步建立数据库       很多教程里都会写到如何建立数据库,但我一直没学会,这里我用的是vs2013,数据库用的是sql server2008(其实只要是微软的数据库都差不多)      1.打开...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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