2013-12-18 69 views
1

我在我的web應用程序中遇到一個問題會很瘋狂。將Excel文件導入到MySQL

我有一個SCADA系統,每天都會將excel文件轉儲到我的服務器,並從一個熱電廠獲取數據。

我在PHP/Jquery中有一個web應用程序,它從MySQL數據庫中讀取這些數據並在圖表和表格中顯示出來。

但我必須手動將excel文件導入到MySQL。我想要做的是構建一個PHP腳本,它的作用如下:

用戶試圖製作一個圖表,如果數據不在MySQL上,它會詢問他是否要從數據庫中導入數據服務器中的excel文件。比excel文件複製到MySQL臨時表並插入到相應的表中。然後數據可以顯示給用戶並保存在MySQL數據庫中。

所有的工作,但我需要一個自動的方式來導入這些數據從Excel文件到MySQL表。

在此先感謝您的幫助

+0

那麼,您看過哪些能夠讀取Excel文件的PHP庫,以及您遇到過哪些問題? –

+0

謝謝馬克花時間閱讀本文!我已經看了一些..但其中大多數是必要的轉換成CSV文件的Excel文件。現在我正在研究http://phpexcel.codeplex.com/。 注意:excel文件具有個性化擴展。他們可以在MS訪問中打開。 – devwebapp

+1

除了我自己的PHPExcel,還有一些PHP庫用於讀取我[對[此問題]](http://http://httpd.conf)中的答案中列出的真正Excel BIFF(.xls)或OfficeOpenXML(.xlsx)文件(不僅僅是csv文件) /stackoverflow.com/questions/3930975/alternative-for-php-excel) –

回答

0

嘿其實我有同樣的問題,我做了以下解決之前: 創建一個PHP函數來執行查詢,以便從您的目的地 公共職能導入的文件InsertNewData($ filename){$ dbtable = substr($ filename,0,-4);

$sql = " LOAD DATA LOCAL INFILE 'http://your-ip-and-root/uploads/$filename'" 
     . " INTO TABLE $dbtable FIELDS TERMINATED BY ';' LINES TERMINATED BY '\\n'"; 
    $error = " <font color = 'red'>error Load Data the file Please contact the DB Admin </font>"; 
    $connection = ResourceManager::getConnection(); 
    $resultado = 0; 
    $connection->beginTransaction(); 
    try { 
     $prepare = $connection->prepare($sql);      
     $prepare->execute();  
     $connection->commit(); 
    } catch (Exception $e) { 
     echo $error;   
     $connection->rollBack(); 

    } 
    $connection = null; 

} ,然後當上傳Excel您可以撥打從網頁中此功能的文件完成

希望它幫助。