广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 9102 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
surro
数位造型
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x3
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
[SQL][讨论] [教学分享]用php把csv档汇入mysql资料库
我在windows做的csv档,可以在excel被打开但未必能在phpmyadmin中汇入
我不知为何mysql对于csv档的设定到底是什么
在其他地方可用的csv,到了mysql未必可以,纵使你做了设定
于是就用php写了一个汇入的程式
fgetcsv 这个函数是用来读取csv档的

他的中文说明如下

说明
array fgetcsv ( int fp, int length [, string delimiter [, string enclosure]])


和 fgets() 类似,只除了 fgetcsv() 解析读入的行并找出 CSV 格式的字段然后传回一个包含这些字段的阵列。字段分隔符是逗号,或者用可选的第三个参数另外指定。字段用双引号包围,或者用可选的第四个参数另外指定。Delimiter 和 enclosure 不能是 null 并且只有第一个字元有效。

fp 必须是通过 fopen(),popen() 或者 fsockopen() 成功打开的有效文件指针。

length 必须大于 CVS 文件中长度最大的行(以便于处理行结束字元)。

fgetcsv() 出错时传回 FALSE,包括碰到文件结束时。

注: CSV 文件中的空行将被传回为一个包含有单个 NULL 字段的阵列,不会被当成错误。

enclosure 是 PHP 4.3.0 新加的。






以下范例是参考中文说明修改而来
原始程式码请参考
http://www.php5.idv.tw/documents/p...n.fgetcsv.html
这段程式码增加了对资料表的新增动作

"
      $sql="INSERT INTO `mpwd` ( `NAME` , `CUNO` , `SERIAL` , `MPWD` )
          VALUES ('$temp[0]','$temp[1]','$temp[2]','$temp[3]')";
"

我一次让他读一个row,用","分隔,放入$temp阵列中
阵列中的数值是代表他在资料表中的第几栏

mysql_connect("localhost","abc","glicd24d") or die("连线失败请洽系统管理员");
mysql_select_db("test");
$dbname="abc.csv";
if ( !$fp = fopen($dbname,"r") ) {
      echo "Cannot open $dbname\n";
      exit;
}else{

  $size = filesize($dbname)+1;
  $row=0;
  while($temp=fgetcsv($fp,$size,",")){
    if ($row>0){
      $sql="INSERT INTO `mpwd` ( `NAME` , `CUNO` , `SERIAL` , `MPWD` )
          VALUES ('$temp[0]','$temp[1]','$temp[2]','$temp[3]')";
      $result=mysql_query($sql);
      echo mysql_error();
    }
    $row=$row+1;
  }
  fclose($fp);
}


[ 此文章被andyz在2005-05-18 20:28重新编辑 ]



献花 x0 回到顶端 [楼 主] From:台湾数位联合 | Posted:2004-11-16 10:53 |
qwe34
个人头像
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x3 鲜花 x27
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

最近在学PHP

感谢大大提供的PHP教学


qwe34's旅记日志
大溪 ● 古迹、道 ● 咖啡厅 ● 风景 皆深入了解拍摄,欢迎指教
献花 x0 回到顶端 [1 楼] From:未知地址 | Posted:2004-12-08 00:18 |
swbchen
数位造型
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x62
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

Thank you ! this is nice ! I may import the data into mySQL


献花 x0 回到顶端 [2 楼] From:台湾中华电信 | Posted:2005-05-22 08:09 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.059761 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言