这篇文章主要介绍了PHP编程实现csv文件导入mysql数据库的方法,涉及php文件读取、转换、数据库的连接、插入等相关操作技巧,需要的朋友可以参考下
具体如下:
config.db.php内容如下;
<?php $username="root"; $userpass="123"; $dbhost="localhost"; $dbdatabase="credits2stakes"; //生成一个连接 $db_connect=mysql_connect($dbhost,$username,$userpass) or die("Unable to connect to the MySQL!"); //选择一个需要操作的数据库 mysql_select_db($dbdatabase,$db_connect);
index.php内容如下:
<meta http-equiv="Content-Type"content="text/html; charset=utf-8" /> <form name="frm1" enctype="multipart/form-data" action="insertdb.php" method="post"> <input name="filename" type="file" /><input name="submit" type="submit" value="import" /> </form>
insertdb.php内容如下:
<?php session_start(); header("Content-type:text/html;charset:utf-8"); //全局变量 $file=$_FILES['filename']; $max_size="2000000"; //最大文件限制(单位:byte) $fname=$file['name']; $ftype=strtolower(substr(strrchr($fname,'.'),1)); //文件格式 $uploadfile=$file['tmp_name']; if($_SERVER['REQUEST_METHOD']=='POST'){ if(is_uploaded_file($uploadfile)){ if($file['size']>$max_size){ echo "Import file is too large"; exit; } if($ftype!='csv'){ echo "Import file type is error"; exit; } }else{ echo "The file is not empty!"; exit; } } require("./config.db.php"); //连接mysql数据库 $row=0; $filename=$file['tmp_name']; $handle=fopen($filename,'r'); while(!feof($handle) && $data=fgetcsv($handle,1000,',')){ $arr_result=array(); if($row==0){ $row++; continue; } if($row>0 && !empty($data)){ $num=count($data); for($i=0;$i<$num;$i++){ array_push($arr_result,$data[$i]); } //$name = iconv('gb2312','utf-8',$arr_result[1]); //$sex = iconv('gb2312','utf-8',$arr_result[2]); $sql="insert into inviter(inviter,invitees,time) value($arr_result[1],$arr_result[2],$arr_result[3])"; //echo $sql; mysql_query("set names utf8"); $result=mysql_query($sql); if($result){ echo "插入成功!!!"; }else{ echo "插入失败!!!"; } } $row++; } fclose($handle); ?>
以上就是本文的全部内容,希望对大家的学习有所帮助。
相关推荐:
php和js对数据库图片进行等比缩放示例_javascript技巧
Javascript仿PHP $_GET获取URL中的参数_javascript技巧
JS版的date函数(和PHP的date函数一样)_JavaScript
以上就是PHP实现csv文件导入mysql数据库的方法的详细内容,更多请关注php中文网其它相关文章!
已抢186790个
抢已抢67372个
抢已抢353308个
抢已抢667707个
抢已抢122873个
抢已抢24335个
抢