2017-02-26 1 views
0

Ich versuche, eine Excel-Datei excdemo.xlsx in MySQL-Datenbank mit PHP zu exportieren. ich einen nicht definierten Offset error.What könnte der GrundNicht zu lösen Undefined Offset Fehler

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); 
} 

Fehler sein:

Undefined offset: 4 in C: \ xampp \ htdocs \ Prüfung \ main.php weglassen Bitte meine Verwendung von mysql anstelle von mysqli_

+2

Bitte aktualisieren Sie Ihre Frage mit einem 'var_dump()' der '$ data'. Es hat eindeutig etwas mit den '$ data' zu tun; –

+0

'fgetcsv' ?? !! das ist eine Excel-Datei, keine CSV, wenn du xlsx in PHP lesen willst, schau dir [PHPExcel] an (https://github.com/PHPOffice/PHPExcel) – niceman

Antwort

0

Ich fand die Lösung für mein Problem. Beim Erstellen eines Excel-Arbeitsblattes müssen wir den Dateityp auf CSV (MS-DOS) setzen, da wir die fgetcsv()-Funktion verwenden.!