PHP编程实现csv文件导入mysql数据库的方法


Posted in PHP onApril 29, 2017

本文实例讲述了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内容如下:

<?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程序设计有所帮助。

PHP 相关文章推荐
收集的PHP中与数组相关的函数
Mar 22 PHP
PHP OPCode缓存 APC详细介绍
Oct 12 PHP
windows下开发并编译PHP扩展的方法
Mar 18 PHP
php学习笔记(三)操作符与控制结构
Aug 06 PHP
php地址引用(php地址引用的效率问题)
Mar 23 PHP
php中3种方法统计字符串中每种字符的个数并排序
Aug 27 PHP
php环境下利用session防止页面重复刷新的具体实现
Jan 09 PHP
php+js实现异步图片上传实例分享
Jun 02 PHP
PHP实现微信JS-SDK接口选择相册及拍照并上传的方法
Dec 05 PHP
PHP中的函数声明与使用详解
May 27 PHP
thinkPHP框架RBAC实现原理分析
Feb 01 PHP
为你的 Laravel 验证器加上多验证场景的实现
Apr 07 PHP
PHP实现ASCII码与字符串相互转换的方法
Apr 29 #PHP
PHP中Notice错误常见解决方法
Apr 28 #PHP
PHP实现查询手机归属地的方法详解
Apr 28 #PHP
PHP中Cookie的使用详解(简单易懂)
Apr 28 #PHP
PHP解决中文乱码
Apr 28 #PHP
PHP中常用的魔术方法
Apr 28 #PHP
PHP实现Unicode编码相互转换的方法示例
Nov 17 #PHP
You might like
thinkPHP+PHPExcel实现读取文件日期的方法(含时分秒)
2016/07/07 PHP
PHP-FPM和Nginx的通信机制详解
2019/02/01 PHP
一段好玩的JavaScript代码
2006/12/01 Javascript
List all the Databases on a SQL Server
2007/06/21 Javascript
js 判断checkbox是否选中的实现代码
2010/11/23 Javascript
jquery offset函数应用实例
2012/11/14 Javascript
js jquery分别实现动态的文件上传操作按钮的添加和删除
2014/01/13 Javascript
Javascript实现单张图片浏览
2014/12/18 Javascript
Vue三层嵌套路由的示例代码
2018/05/05 Javascript
jQuery实现点击图标div循环放大缩小功能
2018/09/30 jQuery
原生javascript运动函数的封装示例【匀速、抛物线、多属性的运动等】
2020/02/23 Javascript
vue.js封装switch开关组件的操作
2020/10/26 Javascript
vue实现广告栏上下滚动效果
2020/11/26 Vue.js
原生js实现九宫格拖拽换位
2021/01/26 Javascript
[03:04]DOTA2超级联赛专访ZSMJ “莫名其妙”的逆袭
2013/05/23 DOTA
[54:47]Liquid vs VP Supermajor决赛 BO 第五场 6.10
2018/07/05 DOTA
Python3读取UTF-8文件及统计文件行数的方法
2015/05/22 Python
python用模块zlib压缩与解压字符串和文件的方法
2016/12/16 Python
python3+PyQt5实现使用剪贴板做复制与粘帖示例
2017/01/24 Python
python利用有道翻译实现&quot;语言翻译器&quot;的功能实例
2017/11/14 Python
Python实现程序判断季节的代码示例
2019/01/28 Python
PyQt5内嵌浏览器注入JavaScript脚本实现自动化操作的代码实例
2019/02/13 Python
PyQt5实现简单数据标注工具
2019/03/18 Python
Python中面向对象你应该知道的一下知识
2019/07/10 Python
python判断自身是否正在运行的方法
2019/08/08 Python
python批量将excel内容进行翻译写入功能
2019/10/10 Python
opencv设置采集视频分辨率方式
2019/12/10 Python
tensorflow实现对张量数据的切片操作方式
2020/01/19 Python
浅谈盘点5种基于Python生成的个性化语音方法
2021/02/05 Python
欧洲著名的二手奢侈品网站:Vestiaire Collective
2020/03/07 全球购物
计算机应用职专应届生求职信
2013/11/12 职场文书
知识竞赛主持词
2014/03/26 职场文书
高三复习计划
2015/01/19 职场文书
餐厅收银员岗位职责
2015/04/07 职场文书
java executor包参数处理功能 
2022/02/15 Java/Android
一级电子管军用接收机测评
2022/04/05 无线电