台灣最大程式設計社群網站
線上人數
814
 
會員總數:245218
討論主題:189090
歡迎您免費加入會員
討論區列表 >> PHP >> PHP匯入csv
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
PHP匯入csv
價值 : 100 QP  點閱數:780 回應數:6

樓主


門外漢
0 10
174 19
發送站內信

要寫一個PHP匯入csv頁面∼
查了資料寫了以下語法
但一直失敗∼∼
我用<?php echo $data_values ?>確定CSV的資料有讀入~
但不知道為何寫不進去phpmyAdmin裡~~
想請問我是不是那裡有錯沒發現呢....?






搜尋相關Tags的文章: [ php csv ] ,
本篇文章發表於2016-07-27 13:36
== 簽名檔 ==
學習新手~請多指教
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

彩虹
檢舉此回應
先不看你的程式碼

我想先問的問題是,中間有出現什麼錯誤嗎?
資料塞不進去database一定會出現錯誤訊息ㄚ

可以把錯誤訊息貼上來嗎?
本篇文章回覆於2016-07-27 13:57
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應


檢舉此回應
fail!<--就只是出現我設計匯入失敗會出現的字~沒有程式的錯誤訊息
本篇文章回覆於2016-07-27 14:28
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
不錯的參考

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
首先~~~先糾正你一些問問題的技術跟觀念。

1.phpmyadmin並非是資料庫系統。它是php寫的一個mySQL的資料庫管理系統。所以沒所謂的寫不寫的進去的問題。
要問問題先將基本的觀念搞清楚一下。

2.一直失敗是怎麼樣的失敗。有無錯誤訊息?有的話也請提出來好提供給人知道你的問題在哪。

3.這是你可能性的問題。要注意一件事。因為你的oid已經是宣告為PRIMARY 索引。所以是不能有重覆值。
在導入csv資料要特別去注意這個問題。免得產生重覆性的id而造成資料庫的寫入錯誤。


以上~~~我大略看了你的程式碼,要注意一下要寫導入式的東西。要非常注意資料庫寫入時的一些防呆機制。
如你的訂單編號正常是不可能有重覆發生。你的資料庫也的確是如此宣告也沒錯。
但你的程式內並未做此判斷。

這會造成你可能第一次匯入是ok。第二次匯入就會失敗的問題。

你可以先試著將資料庫內的資料清空後。再做匯入試試。看看是否會正常。
本篇文章回覆於2016-07-27 14:37
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應


檢舉此回應
1.謝謝你的糾正~記下來了~

2.失敗訊息只有因為下面這個判斷式的而出現的"fail!"字樣
所以我不知道問題出在那>"<

if($query){
echo 'success!';
}else{
echo 'fail!';
}


3.我之前有清空在嚐試過~一樣是失敗~我也有確認過我的o_id沒有重覆


本篇文章回覆於2016-07-27 14:45
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
不錯的參考

可樂快跑
檢舉此回應
php mysql_error
參考一下這個吧!
把他放在要除錯的地方去。
通常…任何的函式應該都會有回傳錯誤或錯誤代碼的機制。
遇到解不開的事,第一個就應該要去找這些錯誤回傳機制。
本篇文章回覆於2016-07-27 15:16
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
最有價值解答

彩虹
檢舉此回應
我要你看的錯誤訊息不是「fail!」... 因為這是經過判斷後,才打印出來的東西
把echo mysql_error()印出來看一下吧~

1.我覺得應該是資料欄位形態的問題

2.而且你每個欄位也都設not null,可能第一筆CSV資料有些是空值,所以會直接錯誤,把「not null」條件都先改成「null」吧

3.你說確定有$data_values的值,你不妨檢察看看多資料列的csv檔案,透過PHP產生sql格式正不正確 「('aaa','qq1'),('bbb','qq2').....等」

4.csv有時候會因為編碼問題,搞不好有資料東西被截斷,你不妨先產生「1筆」csv的資料匯入看看? (通常CSV的編碼是ANSI,要先轉成UTF-8)

以上供你參考




本篇文章回覆於2016-07-27 16:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.