Autor | Zpráva | ||
---|---|---|---|
holi Profil |
#1 · Zasláno: 13. 11. 2012, 16:15:48
Zdravím ve spolek, mám jednoduchý dotaz. Dá se během uploadu např. obrázku zjistit velikost jaká se zatím nahrála a odeslat zpět. Pro pochopení mám tento script:
ob_end_flush(); for ($i=0; $i >= 10; $i++) { sleep(1); echo filesize($_FILES['tmp_name']); echo $i . "<br>\n\r"; ob_flush(); flush(); } Vím že toto nefunguje ale snad tím pochopíte co mám na mysli. Problém je v tom dotázat se na velikost temp souboru během nahrávání. Pokud existuje jednoduší věc pomoci JavaScriptu(beru i jQuery) tak sem sní. Chci si udělat progress bar, ale svůj, hlavně z toho důvodu, že to chci pochopit a moct ot jakkoliv editovat. Nechci žádné knihovny a pluginy. Na konec bych chtěl říct ještě to že by to mělo být proveditelné s defaultní instalaci PHP, takže žádné APC apod. Předem děkuju. |
||
holi Profil |
#2 · Zasláno: 13. 11. 2012, 21:42:08
pedro-7:
Upload souboru zvládám ;) Jde mi přesně o to co psal jenikkozak :) |
||
Davex Profil |
#3 · Zasláno: 13. 11. 2012, 23:04:40
holi:
Průběh nahrávání se musí zjišťovat asynchronně a v tvém případě bys musel nějak předat to dočasné jméno souboru druhému skriptu, což nepůjde, protože ten upload skript se spustí až po dokončení nahrávání a dočasné jméno není jak zjistit. Musí se použít přizpůsobená podpora na serveru (PHP 5.4, APC, PECL uploadprogress, mod_upload_progress) nebo HTML5 File API, které není široce podporováno prohlížeči. |
||
holi Profil |
#4 · Zasláno: 14. 11. 2012, 08:04:12
Davex:
Vím že to php 5.4 podporuje jenže tuto verzi nepodporuje moc serveru. Takže neexistuje.nějaké řešení přes JS ?? |
||
peta Profil |
Ano, prohledej forum JS. IE ma na to ActiveX. Pomoci flash to jde. FF 2.4+ umi drag-drop obrazek. Viz priklad bez prochazet http://axpsu.fpf.slu.cz/~web/gal-pokus/gal-pokus.htm
Vetsinou se to da obejit tim, ze si zjistis rychlost prenosu a pak zobrazujes fiktivni pocet procent. Nebo se zobrazuje klasicke rotujici kolecko :) |
||
holi Profil |
#6 · Zasláno: 14. 11. 2012, 10:04:00
Tak poslat data přes ajax a dat rotující kolečko zvládnu . flash požít nechci. Jen mě prostě zajímá jestli jde třeba.přes jš zjistit velikost odeslaných dat
|
||
margin Profil * |
#7 · Zasláno: 14. 11. 2012, 10:24:38
holi:
„Takže neexistuje.nějaké řešení přes JS ??“ Nejde to, jaké jsou možnosti, napsal Davex. Otazník stačí jeden a nedělá se před ním mezera. peta: „FF 2.4+ umi“ Tuhle verzi Firefoxu sis vycucal z paty? Po verzi 2.0.0.9 přišla verze 3.0, Firefox 2.4 plus ano mínus neexistuje. |
||
Davex Profil |
#8 · Zasláno: 14. 11. 2012, 18:21:11
holi:
„Jen mě prostě zajímá jestli jde třeba.přes jš zjistit velikost odeslaných dat“ Asi jsem to špatně vysvětlil. V JavaScriptu můžeš použít pro získání údajů o nahrávaném souboru File API, ale nepodporují ho všechny běžně používané prohlížeče. Řešení v JavaScriptu bez použití File API musíš zkombinovat se skriptem a podporou na serveru. |
||
Časová prodleva: 11 let
|
0