Sadržaj
Neki web projekti zahtijevaju upravljanje velikim popisima podataka poput proizvoda, prodaje, korisnika i vijesti.Mnogim je ljudima lakše imati izvanmrežne podatke u proračunskoj tablici.
Cilj ovog vodiča je omogućiti uvoz bez obzira na program, bilo Excel ili Libreoffice ili neku drugu opciju koja je dostupna korisniku.
Nakon stvaranja baze podataka MySQL, morate je napuniti podacima. Podaci baze podataka obično se nalaze u datoteci ograničenoj zarezima ili CSV-u, pa ih je potrebno uvesti u bazu podataka MySQL. Ovo je vrlo jednostavan zadatak pomoću ugrađenih funkcija PHP-a koje olakšavaju uvoz iz CSV datoteke i izvoz u bazu podataka MySQL.
U ovom slučaju imamo cjenik servisnih i računalnih dijelova.
[color = # 0000cd] IZRADI TABLICU AKO NE POSTOJI `cijene` ([/ color]
[color = # 0000cd] `id` int (10) NIJE NULA AUTO_INCREMENT, [/ color]
[color = # 0000cd] `concept` varchar (255) Zadana vrijednost NULL, [/ color]
[color = # 0000cd] `cijena` decimalna (10,2) Zadana vrijednost NULL, [/ color]
[color = # 0000cd] PRIMARNI KLJUČ (`id`) [/ color]
[color = # 0000cd]) MOTOR = ZNAČAJNA ZNAČAJKA MyISAM = utf8 AUTO_INCREMENT = 1; [/ boja]
Sada php kod koji radi sav posao
[color = # 0000cd] <? // povezujemo se s bazom podataka [/ color]
[color = # 0000cd] $ connect = mysql_connect ('localhost', 'korisnik', 'lozinka'); [/ color]
[color = # 0000cd] if (! $ connect) {[/ color]
[color = # 0000cd] die ('Nije moguće povezati se s MySQL:'. mysql_error ()); [/ color]
[color = # 0000cd]} [/ color]
[color = # 0000cd] $ connectdb = mysql_select_db ('Usluge', $ connect); [/ color]
[color = # 0000cd] // Prenosimo csv datoteku koja dolazi iz obrasca [/ color]
[color = # 0000cd] move_uploaded_file ($ _ FILES ["file"] ["tmp_name"], $ upload_dir. "/". $ FILES ["file"] ["tmp_name"]); [/ color]
[color = # 0000cd] $ cvs = $ upload_dir. "/". $ _FILES ["file"] ["name"]; [/ color]
[color = # 0000cd] // redak će brojati broj redaka u datoteci koji počinje s 0 [/ color]
[color = # 0000cd] $ row = 0; [/ color]
[color = # 0000cd] $ fp = fopen ($ cvs. "", "r"); [/ color]
[color = # 0000cd] while (! feof ($ fp)) {// Čitam datoteku jedan po jedan redak [/ color]
[color = # 0000cd] $ row ++; [/ color]
[color = # 0000cd] // Preskačem prvi redak jer ima naslove i ne zanima me njihovo umetanje u bazu podataka [/ color]
[color = # 0000cd] if ($ row> 1) {[/ color]
[color = # 0000cd] // Redak koji sam pročitao odvajam ga eksplodira i pokazujem da je odvojen; [/ color]
[color = # 0000cd] $ data = explode (";", fgets ($ fp)); [/ color]
[color = # 0000cd] $ id = $ data [0]; [/ color]
[color = # 0000cd] $ concept = $ data [1]; [/ color]
[color = # 0000cd] $ price = $ data [2]; [/ color]
[color = # 0000cd] $ query = "INSERT INTO prices (id, concept, price) VALUES ($ data [0], '$ data [1]', '$ data [2]')"; [/ color]
[color = # 0000cd] mysql_query ($ query, $ connect); [/ color]
[color = # 0000cd] // kraj while petlje [/ color]
[color = # 0000cd]} [/ color]
[color = # 0000cd]} [/ color]
[color = # 0000cd] // zatvori datoteku [/ color]
[color = # 0000cd] fclose ($ csv); [/ color]
[color = # 0000cd] echo "Uvoz je dovršen !!"; [/ color]
[color = # 0000cd] mysql_close ($ connect); [/ color]
[color = # 0000cd]?> [/ color]
Također možete koristiti ovu skriptu i učiniti je fleksibilnijom, dopuštajući korisniku da registrira datoteku u html obliku s
[color = # 0000cd] [/ color]
[color = # 0000cd] [/ color]
[color = # 0000cd] [/ color]
i na taj način moći učitavati CSV datoteke i uvoziti podatke iz te CSV datoteke u bilo koju mysql bazu podataka ili čak u nekoliko iz jedne datoteke. Mnogo se prilagodbi može izvršiti pomoću ove skripte i koristiti je na željeni način.