| | |
| Stránka: 1 z 1
| [ Príspevkov: 13 ] | |
Autor | Správa |
---|
Registrovaný: 14.04.09 Prihlásený: 18.01.22 Príspevky: 1188 Témy: 198 |
Zdravim,
mam taky problem. pokial spravim (localhost) formular, v ktorom uploadujem viac nez 2 subory, ziadne subory sa neodoslu, pole $_FILES je prazdne.
Cize, mam 4 kolonky pre upload obrazka. Pokial vyplnim 2, vsetko je OK a program pracuje. pokial 3 alebo 4, pole je $_FILES prazdne, pricom php ini mam nastavene takto:
Kód: file_uploads = On upload_max_filesize = 20M max_file_uploads = 40
Vedel by mi prosim niekto poradit, co mam zle nastavene ?
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 |
Neposielas dva 10MB subory?
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 14.04.09 Prihlásený: 18.01.22 Príspevky: 1188 Témy: 198 | Napísal autor témy 1daemon1: 12.02.2011 18:37 | |
|
Nie praveze tak 3.5MB obrazky su to. Vzdy ked som nieco v php.ini zmenil, server som restartoval takze v tom tiez nieje problem. Vobec mi to nedava zmysel.
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 |
vies používať wireshark alebo firebug? Ak nie, pre začiatok nainštaluj firebug chcem zistiť, či je problém vo formulári alebo na serveri
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 29.01.11 Prihlásený: 12.02.11 Príspevky: 38 Témy: 2 | Napísal The: 12.02.2011 19:59 | |
|
zle označené pomocou atribútu "name" ??
|
|
Registrovaný: 16.05.07 Prihlásený: 01.08.17 Príspevky: 837 Témy: 6 | Napísal juho: 12.02.2011 21:52 | |
|
ak aj ano tak tie dva by sa mu tak ci tak poslali
ale je pravda ze moze byt nieco v tom formulari takze bolo by vhodne sem dat html kod formulara a popripadne javascriptove doplnky s ktorymi ho upravujes
|
|
Registrovaný: 14.04.09 Prihlásený: 18.01.22 Príspevky: 1188 Témy: 198 | Napísal autor témy 1daemon1: 13.02.2011 11:26 | |
|
Ono to je jedno ci mam spravny atribut name alebo nie. Ide o to, ze ked kontrolujem pole $_FILES funkciou print_r(), nieje take ako ma byt. No pre skusku som si spravil tento kod:
Kód: <?php if( !isset( $_GET['step'] ) || $_GET['step'] != 2 ) { ?> <form action="?step=2" method="post" enctype="multipart/form-data"> <b>vyberte fotografiu 1: </b><br> <input type="file" name="obrazok0"> <p> <b>vyberte fotografiu 2: </b><br> <input type="file" name="obrazok1"> <p> <b>vyberte fotografiu 3: </b><br> <input type="file" name="obrazok2"> <p> <b>vyberte fotografiu 4: </b><br> <input type="file" name="obrazok3"> <p> <p> <input type="submit" value="pridaj"> </form> <?php } elseif( isset( $_GET['step'] ) && $_GET['step'] == 2 ) { print_r( $_FILES ); } ?> Spusim cez localhost. Ak vyberiem 1 obrazok, vracia toto: Kód: Array ( [obrazok0] => Array ( [name] => 00.JPG [type] => image/jpeg [tmp_name] => /tmp/phpvdgvU2 [error] => 0 [size] => 3650277 ) [obrazok1] => Array ( [name] => [type] => [tmp_name] => [error] => 4 [size] => 0 ) [obrazok2] => Array ( [name] => [type] => [tmp_name] => [error] => 4 [size] => 0 ) [obrazok3] => Array ( [name] => [type] => [tmp_name] => [error] => 4 [size] => 0 ) ) Ak 2 obrazky, vracia to iste, akurat pole $_FILES['obrazok1'] je naplnene podobne spravne ako pole $_FILES['obrazok0']. Ak vyberiem 3 alebo 4 obrazky, vracia to len toto: Kód: Array ( )
Takze podla mna je jasne chyba v nastaveni localhostu.
rooobertek píše: vies používať wireshark alebo firebug? Ak nie, pre začiatok nainštaluj firebug chcem zistiť, či je problém vo formulári alebo na serveri
Nepoznam ani jeden z tych programov, pracujem na ubuntu takze dufam ze su tie programy k dispozicii aj pre mna, idem to vyskusat.
// nainstaloval som firebug, pozrel zopar tutorialov ako ho pouzivat. Je to velmi uzitocny nastroj, urcite sa mu zide v buducnosti takze dakujem. Ale konkretne v tomto pripade mi asi moc nepomoze pretoze kod, ktory som teraz uviedol urcite chybny nieje a predsa sa sprava ako by sa nemal.
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 |
pozri si net panel (sieť ak to máš po slovensky) a klikni na "persist". Potom odošli formulár a pozri sa, čo naozaj odišlo.
Určite sa nauč používať aj wireshark, ten mi už mnohokrát bohovsky pomohol. Je v repozitároch, takže stačí iba sudo apt-get install wireshark.
Ak to s ním skúsiš, určite sa ti zíde informácia, že do filtra treba napísať "http" a dať enter. To ti potom bude zobrazovať iba http requesty a responsy. Keďže pracuješ na localhoste, dáš počúvať na "lo".
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 14.04.09 Prihlásený: 18.01.22 Príspevky: 1188 Témy: 198 | Napísal autor témy 1daemon1: 13.02.2011 13:57 | |
|
Takze vsimol som si jednu vec. Pokial uploadujem 2x 4.1MB obrazok, sprava sa to tak ako keby som uploadoval 3 alebo 4 cize dostanem prazdne pole Array().
Pokial 2 3.5MB obrazky tak to ide, takze predpokladam ze tam mam nastaveny nejaky limit na 8MB dokopy, ale v php.ini mam urcite to, co som pisal hore a je to urcite spravny php.ini (/etc/php5/apache2/php.ini).
Teraz k tomu Firebugu. Pokial odosielam 2 3.5MB obrazky, firebug ukaze, ze obrazky sa poslali a ostatne dve file polia su prazdne ( $_FILES['obrazok3'], $_FILES['obrazok4'] ).
Pokial som skusal 4, asi 3MB obrazky, Firebug ukazuje, ze sa poslal prvy a ostatne 3 mi vobec neukazuje, nikde o nich nic nepise. Teda ak som to spravne vsetko pochopil. Pole je samozrejme teraz prazdne Array().
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 |
pošli pls ten formulár, skúsim to u seba
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 14.04.09 Prihlásený: 18.01.22 Príspevky: 1188 Témy: 198 | Napísal autor témy 1daemon1: 13.02.2011 15:41 | |
|
Skusam presne to, co som tu postoval ako priklad. Mam aj dalsi php subor v ktorom mi to nejde ale ten je v podstate rovnaky akurat su tam este hluposti ohladom upravy obrazkov a tak. Toto je vytah z toho suboru ale ten vytah mi tiez nefunguje, takze ked vyriesim ten je jasne, ze bude fungovat aj povodny subor. Cize toto mi nefunguje:
Kód: <?php if( !isset( $_GET['step'] ) || $_GET['step'] != 2 ) { ?> <form action="?step=2" method="post" enctype="multipart/form-data"> <b>vyberte fotografiu 1: </b><br> <input type="file" name="obrazok0"> <p> <b>vyberte fotografiu 2: </b><br> <input type="file" name="obrazok1"> <p> <b>vyberte fotografiu 3: </b><br> <input type="file" name="obrazok2"> <p> <b>vyberte fotografiu 4: </b><br> <input type="file" name="obrazok3"> <p> <p> <input type="submit" value="pridaj"> </form> <?php } elseif( isset( $_GET['step'] ) && $_GET['step'] == 2 ) { print_r( $_FILES ); } ?>
Je to fakt zvlastne to bude snad nejaky bug alebo co.
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 |
skús pozrieť post_max_size
// že mi to skôr nenapadlo
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 14.04.09 Prihlásený: 18.01.22 Príspevky: 1188 Témy: 198 | Napísal autor témy 1daemon1: 14.02.2011 11:27 | |
|
rooobertek si moj boh !
Presne som to mal nastavene na 8M, dal som to na 20M a vsetko funguje.
Fakt si mi velmi pomohol, dakujem.
|
|
| Stránka: 1 z 1
| [ Príspevkov: 13 ] | |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|