2012-08-31 32 views
0

我導入了csv文件數據併成功保存在php mysql中,當我在csv中包含頭文件時,它將它作爲數據,而不是頭文件,我想添加檢查當任何用戶導入csv文件時,腳本必須檢查標題字段必須與mysql表相同,否則它會退出或停止進一步處理,我只是驗證必須與我的db表中存在的標題字段相同,這要歸功於腳本如下。在php中檢查或驗證csv文件頭字段

$file_handle = fopen("myfile.csv","r")or die("can't open file"); 

while (($data = fgetcsv($file_handle, 1024, ",")) !== FALSE) 
    { 

$data[0]; 
$data[1]; 
$data[2]; 
    $data[3]; 
$data[4]; 
$data[5]; 
$data[6]; 
$data[7]; 



$import="INSERT into customer(a_code,c_name,first_name,cell,email,phone,date,group_name) values('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]')"; 


    mysql_query($import) or die(mysql_error());*/ 

} 
fclose($handle); 

回答

0

可以MYSQL_QUERY(「DESC客戶」)來獲得表中的列的列表,然後把它比作你的CSV文件開頭,看看它們是否匹配

也可以嘗試array_combine($ header_line_array,$ current_line_array)獲得一個鍵控陣列,然後你可以允許你的CSV列的順序不同,然後數據庫列

+0

你可以根據我的senario實現這個,我會很感謝你的這個 – user1639357