Imaginsystems


Tecniche di Programmazione - Codici Sorgenti - News Informatiche
Archivio Posts
Anno 2014

Anno 2013

Anno 2012
Statistiche
  • Views Home Page: 61.088
  • Views Posts: 471.687
  • Views Gallerie: 0
  • n° Posts: 210
  • n° Commenti: 224

PHP - TRASFERIRE LE INFORMAZIONI DA UN FILE EXCEL '.xls' AL NOSTRO DATABASE MySQL

Trasferire le informazioni da un file Excel '.xls' al nostro Database MySql

Le informazioni che sono immagazzinate nel file sono: nome,cognome,telefono.

Il nostro foglio excel è cosi strutturato:

| nome | cognome | telefono |
-------------------------------------------------
| davide | rossi | 066666 |
-------------------------------------------------
| mario | rossi | 050055 |

Per prima cosa creiamo il nostro Database MySql che conterà le nostre informazioni :

CREATE TABLE Rubrica( 
 `id` INT( 11 ) NOT NULL AUTO_INCREMENT , 
 `nome` VARCHAR( 10 ) NOT NULL DEFAULT  '', 
 `cognome` VARCHAR( 250 ) NOT NULL DEFAULT  '', 
 `telefono` VARCHAR( 10 ) NOT NULL DEFAULT  '', 
PRIMARY KEY (  `id` ) 
) TYPE = MYISAM


Vediamo come Importare dei dati da excel a mysql atraverso php

Importiamo la libreria necessaria:

            require_once 'Excel/reader.php';

inizializziamo la classe:

            $data = new Spreadsheet_Excel_Reader();

impostiamo l’output:

	$data->setOutputEncoding('CP1251');
impostiamo il file da leggere:

            $data->read('rubrica.xls');

dove 'rubrica.xls' è il file excel che contente i dati.

Il file php dovrà contenere il seguente codice :

<?php 
 
require_once
'Excel/reader.php'; 
 
$data
= new Spreadsheet_Excel_Reader(); 
 
$data
->setOutputEncoding('CP1251'); 
 
$data
->read('rubrica.xls'); 
 
$username
="root"; 
$password
=""; 
$database
="db_rubrica"; 
 
mysql_connect
("localhost" ,$username ,$password); 
mysql_select_db
($database); 
 
//faccio partire l'indice dal numero 2 perché cosi salto il record contenente le informazioni: Nome | Cognome | Telefono 
for ($i = 2; $i <= $data->sheets[0]['numRows']; $i++){ 
 
$nome
= "".$data->sheets[0]['cells'][$i][1].""; //nome (colonna 1) 
$cognome
= "".$data->sheets[0]['cells'][$i][2].""; //cognome (colonna 2) 
$telefono
= "".$data->sheets[0]['cells'][$i][3].""; //telefono (colonna 3) 
 
$query
="INSERT INTO`$database`.`Rubrica` (`id` , `nome` , `cognome` ,`telefono` )VALUES ( NULL,'$nome','$cognome','$telefono');"; 
 
$dati
=mysql_query($query); 
} 
 
if($dati) 
     echo
"Salvato con successo i dati nel database "; 
else  
     echo
"Fallito il salvataggio, controllare il file Excel o il database dati"; 
 
?>


Come sempre, per i pigri vi metto a disposizione il file demo, ricordativi di creare il database e la tabella :-)

Potete scaricare il file d'esempio :

Password :  "ImaginSystem" 

By ImaginSystems & Queen Gin   

Categoria: PHP
mercoledì, 02 mag 2012 Ore. 14.00
Ora e Data
Mappa
Blogs Amici
    Copyright © 2002-2007 - Blogs 2.0
    dotNetHell.it | Home Page Blogs
    ASP.NET 2.0 Windows 2003