» Poradna » Programy

Import csv souboru do mysql databáze v Php

 |   | 

Dobrý den,
řeším skript, kde načítám z disku csv soubor. Jednotlivé řádky pak zpracovávám a vkládám do databáze. Problém je, že se mi skript po nějaké době "zastaví". Nevíte někdo čím by to mohlo být?
Moc děkuji za pomoc

Odpovědi na otázku

 |   | 

PHP, resp. server má nastavenou maximální dobu spuštění (30 nebo 60 sekund). Zkus na netu pohledat set_time_limit. Tím by se to mohlo vyřešit.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Diky moc. Mel jste pravdu, bylo to timhle - set_time_limit. Ted jeste potrebuju zjistit jestli je naka moznost nastaveni delky trvani skriptu - neco jako je v .NETu Script.Timeout

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

este by si mohol popisat strucne postup ako to do tej db vkladas

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

No proste podle jednoho parametru z csv souboru urcim zda davam insert nebo update. Pak davam proste INSERT INTO xyz SET a, b atd.
Potom vkladam jeste udaje do druhe tabulky, pak zpracuji obrazek jehoz zdroj vezmu z dane http adresy a pak posledni vklad do dalsi tabulky. No a tohle vsechno delam v kazdem cyklu dokud nedoctu csv soubor

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

a neslo by to tak, ze najprv zostavit (napr. v cykle) 1 sql dotaz a ten potom naraz poslat?
lebo ked to robi po riadkoch
-nacita riadok
-insert do db
-nacita riadok
-insert do db
-nacita riadok
-insert do db
.
.
.
atd
tak to moze trvat dlho

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Myslite tim ze bych do nejake promenne dal vic insertu? Napr.
while () {
$query = $query."\n INSERT into tabulka SET xy";
}
a az tady pak $mysql->query($query);
?
Chápu to dobře nebo úplně blbě?

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Import




Určitě si přečtěte


Aktuální číslo časopisu Computer

Odhalte skryté funkce Windows 10

Test levných Androidů do 4 000 Kč

Srovnání úsporných minipočítačů

Změřili jsme rychlost 10Gb/s ethernetu