[請益] help!將excel檔案上傳~匯入mysql問題!

看板PHP作者 (alex)時間18年前 (2008/02/23 18:32), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串1/1
小弟~寫了一個將excel檔案上傳並且 程式利用COM轉成csv檔~ 並且讀取csv檔匯入mysql中~ 測試資料量(筆數)較小的檔案匯入都沒問題! 但有份檔案有較大的資料量為3010筆~ 我在localhost測試時都沒問題~正常匯入3010筆 但上傳至主機後~用遠端電腦test時~確總是只匯了2898筆 中間一直少匯入了20筆左右的資料~ try了很久~不知道到底哪裡出錯? 請各位大大幫幫忙~小弟感激不盡! 下面為code:(小弟也試過用file讀檔再用explode切不過還是不行...) <? $excel = new COM("excel.application") or die("Unable to instanciate excel"); $excel->DisplayAlerts = 0; $excel->Workbooks->Open("C:\\AppServ\\www\\update\\register\\$upfile"); $excel->Workbooks[1]->SaveAs("C:\\AppServ\\www\\update\\register\\fund.csv",6); $excel->Quit(); $excel->Release(); $excel = null; $fpemp=fopen($cfg_path."fund.csv","r"); while ( $rowdata = fgetcsv( $fpemp , 2000 , ",")){ //讀取csv檔 if ($i++ == 0) //第一筆為抬頭不匯入 continue ; $fund_id = iconv("BIG5","UTF-8",$rowdata[0]); //轉換編碼至utf-8 $bank_id = iconv("BIG5", "UTF-8", $rowdata[1]); $region_id = iconv("BIG5", "UTF-8", $rowdata[2]); $type_id = iconv("BIG5", "UTF-8", $rowdata[3]); $exchange_id = iconv("BIG5", "UTF-8", $rowdata[4]); $name = iconv("BIG5", "UTF-8", $rowdata[5]); $query_insert="INSERT INTO fundeval_fund (fund_id,name,bank_id,exchange_id,region_id,type_id)VALUES('$fund_id','$name','$bank_id','$exchange_id','$region_id','$type_id')"; $result = mysql_query($query_insert,$link) or die ("Invalid Insert Query");//寫入資料庫 } ?> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.68.127.31

02/23 20:57, , 1F
你可以先echo出來看看抓出來資料對不對
02/23 20:57, 1F

02/23 20:57, , 2F
還有php5的fgetcsv 切中文有bug 建議不要用
02/23 20:57, 2F
文章代碼(AID): #17l_PCVv (PHP)
文章代碼(AID): #17l_PCVv (PHP)