2017-02-26 36 views
0

我想導出一個excel文件excdemo.xlsx到MySQL數據庫使用PHP。 我得到一個未定義的偏移error.What可能是原因無法解決未定義的抵消錯誤

if(isset($_POST['submit'])) 
{ 
$link=mysql_connect("localhost","root",""); 
mysql_select_db("db2017",$link); 


$source = fopen('excdemo.xlsx', 'r') or die("Problem open file"); 
    while (($data = fgetcsv($source, 1000, ",")) !== FALSE) 
    { 
     $name = $data[0]; 
     $lname = $data[1]; 
     $phone = $data[2]; 
     $email = $data[3]; 
     $address = $data[4]; 
     $high = $data[5]; 


mysql_query("INSERT INTO excel(fname,lname,phone,email,address,high) VALUES ('".$name."','".$lname."','".$phone."','".$email."','".$address."','".$high."') "); 
    } 
    fclose($source); 
} 

錯誤:

未定義抵消:4在C:\ XAMPP \ htdocs中\考試\ main.php 請忽略我的使用的mysql而不是mysqli_

+2

請用'$ data'的'var_dump()'來更新你的問題。這顯然與'$ data'有關; –

+0

'fgetcsv' ?? !!這是一個不是csv的excel文件,如果你想在php中閱讀xlsx,請查看[PHPExcel](https://github.com/PHPOffice/PHPExcel) – niceman

回答

0

我找到了解決我的問題的方法。在創建Excel表格時,我們需要將文件類型設置爲CSV(MS-DOS),因爲我們使用的是使用fgetcsv()函數。