本文实例讲述了PHP编程实现csv文件导入mysql数据库的方法。分享给大家供大家参考,具体如下:
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内容如下:
<?phpsession_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程序设计有所帮助。
新闻热点
疑难解答
图片精选