Problem to import from xls to mysql

Topics: Developer Forum, User Forum
Feb 17, 2015 at 8:07 PM
HI , sorryfor english , i have make a db to test , it have 12 columns and 15 rows.

This is the code to import :
<?php
//include the following 2 files
require 'Classes/PHPExcel.php';
require_once 'Classes/PHPExcel/IOFactory.php';

$conn = new mysqli('localhost', 'root', 'root', 'miodb');

$path = "Giocattoli.xls";

$objPHPExcel = PHPExcel_IOFactory::load($path);
foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) {
    $worksheetTitle     = $worksheet->getTitle();
    $highestRow         = $worksheet->getHighestRow(); // e.g. 10
    $highestColumn      = $worksheet->getHighestColumn(); // e.g 'F'
    $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
    $nrColumns = ord($highestColumn) - 60;
    echo "<br>The worksheet ".$worksheetTitle." has ";
    echo $nrColumns . ' columns (A-' . $highestColumn . ') ';
    echo ' and ' . $highestRow . ' row. <br/>';
    
   
for ($row = 1; $row <= $highestRow ; ++ $row) {
    $val=array();
    for ($col = 0; $col < $highestColumnIndex; ++ $col) {
       $cell = $worksheet->getCellByColumnAndRow($col, $row);
       $val[$col] = $cell->getValue();
    }
     
     $sql="insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile)
    VALUES ('".$val[0] . "','".$val[1] . "','" . $val[2] . "','" . $val[3]. "','" . $val[4] . "','"  . $val[5] . "','" . $val[6] . "','" . $val[7] . "')";
    $insert_query=$conn ->query($sql)        ;
    if ($insert_query === TRUE) {
               echo $sql;
            } else {
               $msg= "Error: " . $sql . "<br>" . $conn->error;
            }
 }
}
?>
But i have some error and in db i have two empty rows :

The worksheet Foglio1 has 12 columns (A-H) and 15 row.
insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('103928038','SAMBA','Palla piccola ','22','10.5','6.56','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('103928040','SAMBA','Palla piccola 10 pz','22','110','68.75','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('102319011','SAMBA','racchetta ','22','22','13.75','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('104601012','SAMBA','bambola','22','12.5','8.2386363636364','34.090909090909','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('104287040','SAMBA','camion','22','16','10','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('104287065','SAMBA','macchina','22','130','81.25','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('104287077','SAMBA','aereo','22','29','18.125','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('101704043','SAMBA','elicottero','22','15','9.375','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('104563010','SAMBA','leone','22','55','34.375','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('101948014','SAMBA','tigre','22','12.5','7.8125','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('104323035','SAMBA','cane','22','38','23.75','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('104323199','SAMBA','gatto','22','76','47.5','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('104501010','SAMBA','pesce','22','21','13.125','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('104022013','SAMBA','fucile','22','14','8.75','37.5','1')insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('104022025','SAMBA','mitre','22','20','12.5','37.5','1')
The worksheet Foglio2 has 5 columns (A-A) and 1 row.

Notice: Undefined offset: 1 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 2 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 3 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 4 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 5 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 6 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 7 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30
insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('','','','','','','','')
The worksheet Foglio3 has 5 columns (A-A) and 1 row.

Notice: Undefined offset: 1 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 2 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 3 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 4 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 5 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 6 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30

Notice: Undefined offset: 7 in /home/maria/localhost/letturaexcel/leggigiocattoli.php on line 30
insert into giocattoli (codice,azienda,prodotto,iva,prezzopub,prezzoriv,sconto,disponibile) VALUES ('','','','','','','','')
May 30 at 10:21 AM
You loop only vals, not rows.

First create loop for rows, then inside create loop for vals and query (inside too).