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 相关文章推荐
global.php
Dec 09 PHP
php木马攻击防御之道
Mar 24 PHP
php strtotime 函数UNIX时间戳
Jan 14 PHP
php自动获取字符串编码函数mb_detect_encoding
May 31 PHP
php数组中删除元素之重新索引的方法
Sep 16 PHP
PHP中字符安全过滤函数使用小结
Feb 25 PHP
php动态变量定义及使用
Jun 10 PHP
PHP模拟asp中response类实现方法
Aug 08 PHP
Laravel中注册Facades的步骤详解
Mar 16 PHP
实例讲解php将字符串输出到HTML
Jan 27 PHP
PHP PDOStatement::debugDumpParams讲解
Jan 30 PHP
Yii框架操作cookie与session的方法实例详解
Sep 04 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
php调用mysql存储过程
2007/02/14 PHP
php判断变量类型常用方法
2012/04/24 PHP
php curl抓取网页的介绍和推广及使用CURL抓取淘宝页面集成方法
2015/11/30 PHP
jQuery Validation实例代码 让验证变得如此容易
2010/10/18 Javascript
初步认识JavaScript函数库jQuery
2015/06/18 Javascript
jquery动态增加删减表格行特效
2015/11/20 Javascript
JavaScript几种数组去掉重复值的方法推荐
2016/04/12 Javascript
Bootstrap每天必学之按钮(Button)插件
2016/04/25 Javascript
JavaScript编写页面半透明遮罩效果的简单示例
2016/05/09 Javascript
javascript常用经典算法详解
2017/01/11 Javascript
详谈JavaScript的闭包及应用
2017/01/17 Javascript
实例详解JSON取值(key是中文或者数字)方式
2017/08/24 Javascript
浅谈Angular4实现热加载开发旅程
2017/09/08 Javascript
angular内置provider之$compileProvider详解
2017/09/27 Javascript
轻松搞定jQuery+JSONP跨域请求的解决方案
2018/03/06 jQuery
详解vue-router 初始化时做了什么
2018/06/11 Javascript
在Vant的基础上实现添加表单验证框架的方法示例
2018/12/05 Javascript
Vue CLI项目 axios模块前后端交互的使用(类似ajax提交)
2019/09/01 Javascript
解决layUI的页面显示不全的问题
2019/09/20 Javascript
Vue+Openlayers自定义轨迹动画
2020/09/24 Javascript
[16:14]教你分分钟做大人:米拉娜(HEROS)
2014/11/24 DOTA
Python遍历指定文件及文件夹的方法
2015/05/09 Python
python虚拟环境virualenv的安装与使用
2016/12/18 Python
python安装cx_Oracle模块常见问题与解决方法
2017/02/21 Python
python numpy元素的区间查找方法
2018/11/14 Python
Python 中包/模块的 `import` 操作代码
2019/04/22 Python
详解python百行有效代码实现汉诺塔小游戏(简约版)
2020/10/30 Python
CSS3中的弹性布局em运用入门详解 1em等于多少像素
2021/02/08 HTML / CSS
英国专业美容产品在线:Mylee(从指甲到脱毛)
2020/07/06 全球购物
个人简历自荐信
2013/12/05 职场文书
八年级语文教学反思
2014/02/11 职场文书
学雷锋志愿服务月活动总结
2014/03/09 职场文书
反腐倡廉警示教育活动总结
2014/05/05 职场文书
优秀纪检干部材料
2014/08/27 职场文书
2019公司借款合同范本2篇!
2019/07/24 职场文书
SpringBoot实现quartz定时任务可视化管理功能
2021/08/30 Java/Android