2013-04-07 111 views
0

這是不正常的,因爲我們之前討論過,出於某種原因,我所做的是爲上傳的文件創建一些$varsCSV插入到數據庫

Code available here (Pastebin).

但從來沒有真正插入任何

  • 在做一個var_dump($csv_row)我得到:bool(false)
  • var_dump($fh)顯示:resource(89) of type (stream)
  • var_dump($insert_str)顯示了CSV文件中的所有1700條記錄(顯然過於大在這裏發帖)

所以我猜while聲明或從if聲明是錯誤的地方。真的真的很感激這方面的一些幫助,我需要得到它明天工作(星期一)

回答

0

你似乎使用codeigniter數據庫庫錯誤。我可以看到一個

$this->db->set($insert_str); 

但沒有$this->db->insert()被發現。 set()方法僅在update()insert()之後有用,See the docs,搜索$this->db->set()

你或者想要使用$this->db->insert_batch()(在同一個文檔頁面上,不幸的是沒有直接鏈接的部分)形式並與你的記錄一起構建一個數組的數組(這樣你就不必創建一個長的sql字符串) )。 或者您可以使用$this->db->query(),並將$insert_str送到您現在撥打$this->db->set()的地方。


根據你的問題:

的var_dump($ insert_str)表示從CSV文件中的所有1700條記錄

,所以我會排除while循環或可能性if無法正常工作。

0

將這個代碼在控制器的頂部或之前讀csv文件

ini_set('auto_detect_line_endings', true);

檢查這是否會爲你

工作