Gå til innhold

Ekportere fra excel til mysql


Anbefalte innlegg

Videoannonse
Annonse

Skjønner det slik at dette er en tabell med kunder...

 

- Du kan lagre filen i excel som *.csv fil. Da blir det lagret med ; mellom hvert felt. Navnet på feltet blir i den første raden

- Lag så et script som leser denne filen rad for rad (se file()) og lager en tabell med feltnavn utfra første rad.

- For å få tak i hvert felt i hver rad, deler du opp hver rad i flere elementer som er skilt med skilletegnet ";" (Se explode)

- Så legger du hvert felt inn i tabellen i det feltet det skal vha INSERT.

 

Eksempel

Excel ark: (Bruker | for skille kolonner) Si at den heter kunder.xls

kundenummer|kundenavn|adresse|kontaktperson

231234|hardware.no|hardwaregata|hard ware.no

1345|firmafake|fakegata 32|arnulf fake

 

Dette lagres som csv fil (f.eks kunder.csv). Den blir sånn ca slik:

kundenummer;kundenavn;adresse;kontaktperson

231234;hardware.no;hardwaregata;hard ware.no

1345;firmafake;fakegata 32;arnulf fake

 

Denne filen leser du inn i et php script

$readfile = file("kunder.csv"); // Les inn filen i et array som kalles $readfile
$lines = count($readfile); // Finner antall linjer i filen
$line = 0; // Teller for å holde styr på hvilken linje du er på
$feltnavn = explode(";", $readfile[0]) // Legger feltnavn inn i variabelen $feltnavn
// Her kan du evt opprette tabellen i mysql med disse feltnavnene
$line++; //legger på 1 på $line for å hoppe til neste linje
while ($line<$lines) { //Loop for å lese alle linjer
$data = explode(";", $readfile[$line]); // Her legges hvert felt inn i et array, $data
// Dvs at $data[0] er kundenummer, $data[1] er kundenavn osv.
// Dette legger du inn i de rette felten ei mysql tabellen
$line++; // Ikke glem denne før while-blokken avsluttes
}

 

Nå har du fått endel hjelp nå. Regner med du kan så pass php til å klare resten selv ?

 

Dette er den måte jeg ville brukt for å overfør data fra excel til mysql.

 

Håper det går greit ;)

Lenke til kommentar

Takk skal du ha, bør gå glatt nå.

Selve programmeringa skulle gå greit, men har ikke vært bori *.csv før.. Så da løser det seg!

:thumbup:

*Glede seg til å bli ferdig med å lese til eksamen, så jeg kan programmere php*

Lenke til kommentar

Fant også en nettside hvor du kunne laste opp en .csv fil, og få mysql-setninger ut i en textfil. Var bare å google etter det.

 

Edit, Det jeg brukte mysql-setningene til, var å lime de inn i phpmyadmin, og vips så hadde jeg de i databasen.

Endret av phanti
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...