php把csv文件导入到mysql数据库
本程序实现数据导入原理是先把csv文件上传到服务器,然后再通过php的fopen与fgetcsv文件把数据保存到数组,然后再用while把数据一条条插入到mysql数据库,代码如下:
- $fname = $_files['myfile']['name'];
- $do = copy($_files['myfile']['tmp_name'],$fname);
- if ($do){
- echo"导入数据成功<br>";
- }else{
- echo "";
- }
- error_reporting(0);// 导入csv格式的文件
- $connect=mysql_connect("localhost","root","") or die("could not connect to database");
- mysql_select_db("gklqtzcx",$connect) or die (mysql_error());
- mysql_query("set names 'gbk'");
- $fname = $_files['myfile']['name'];
- $handle=fopen("$fname","r");
- while($data=fgetcsv($handle,10000,",")){
- $q="insert into records (name,classes,a_time,college,notify,receiver,r_time,handler) values ('$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]')";
- mysql_query($q) or die (mysql_error());
- }//开源代码phpfensi.com
- fclose($handle);
- echo "<meta http-equiv="refresh" content="1;url=list.php">1秒钟转入列表页,请稍等."
- ?>
- <form enctype="multipart/form-data" action="<?php echo"".$_server["php_self"].""; ?>" method="post">
- <p>导入cvs数据 <input name="myfile" type="file"> <input value="提交" type="submit">
- </p>
- </form>