Da MySQL a Excel aggiornamento del file

Scar991

Utente Attivo
30 Apr 2012
167
0
0
Ciao a tutti!
Ho messo su un gestore per il database di una biblioteca, utilizzando strumenti semplici (alcune pagine web e un database in locale con EasyPHP).
Mi è stata richiesta un'ulteriore funzionalità: si vuole, praticamente, avere un file di Excel con tutti i record del Database, tanto per sicurezza, poiché chi dovrà usare il programma aveva stilato la lista iniziale (da cui io ho creato il DB) proprio su Excel e vorrebbe aggiornare anche quella.
Non ho la più pallida idea di come procedere. So che è possibile esportare il DB di MySQL in formati come il ".csv", ma mi servirebbe che il file risultante sia già nel formato che io desidero, ossia il ".xls" o ".xlsx".
Dovrei di conseguenza esportare (dove trovo una guida per farlo dinamicamente da PHP?) e salvare i record in Excel... L'ideale sarebbe aggiungere nuove linee al file di Excel esistente, poiché i libri sono davvero tanti e riscrivere tutto il file di volta in volta prenderebbe un sacco di tempo...

Qualcuno sa darmi qualche dritta o qualche esempio? Grazie mille!!
 
Ciao, ecco un esempio
PHP:
<?php
    header("Content-Type: application/vnd.ms-excel");
    // in filename metterai il nome del file dovrà essere creato
    header("Content-Disposition: inline; filename=dati.xls");
    ?>
    <table>
    <tr>
    <td>dati</td>
    <td>dati</td>
    <td>dati</td>
    </tr>
    </table>
 
In questo modo, aggiungendo alla struttura il ciclo di lettura del mio DB dovrebbe scriverlo, giusto?
E se ho capito bene, per caricare solo gli ultimi file, dovrò, ogni volta che viene premuto il salvataggio, aggiungere solamente il <tr><td> per le righe mancanti?
 
Si per la prima domanda
non ho capito molto la seconda
 
Perdonami, mi spiego meglio.
Io dovrei aggiornare continuamente il mio file di Excel: ricrearlo e/o sovrascriverlo da capo, dal primo all'ultimo volume, impiegherebbe un sacco di tempo, perché i libri sono davvero moltissimi.
Mi chiedevo se, per aggiornare solamente il file già esistente con gli ultimi testi aggiunti dovessi usare solo parte di quel codice.

Praticamente: aggiungerei la linea al file di Excel nel momento in cui registro il file sul DB con un unico script.

Mi chiedevo se per farlo dovrei aggiungere solamente i tag tr e td e non tutto il codice per ricreare la tabella, che ci sarebbe già..
 
Non saprei, fai delle prove te ne accorgi subito
 
Ho provato: risultato, una ciofeca xD

In questo modo, ogni volta mi crea un file e me ne salva uno diverso...
A me servirebbe qualcosa che aggiunga direttamente linee ad un file esistente... Ti viene in mente qualcosa?
 
ciao
puoi provare questo, dovrebbe crearti e salvarti un file xls dal db ogni volta che chiami lo script, sovrascrivendo l'esistente
PHP:
<?php
$filename = "pagina_excell.xls";
header ("Content-Type: application/vnd.ms-excel");
header ("Content-Disposition: inline; filename=$filename");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang=it>
<head>
<title>excell</title>
</head>
<body>
<table border="1">
<tr><th>campo 1</th><th>campo 2</th></tr>
<?php
//connessione al database
/* uso mysql perchè mi viene più rapido*/
$query=mysql_query("SELECT campo_1, campo_2 FROM tabella");
while($riga=mysql_fetch_array($query)){
	echo "<tr><td>".$riga['campo_1']."</td><td>".$riga['campo_2']."</td></tr>"
}
?>
</table>
</body>
</html>
prova al massimo non funzia

p.s.
ho guardato in giro e non ho trovato come aggiungere, ogni volta devi ricrearlo da zero
 

Discussioni simili