Autor Zpráva
holi
Profil
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
pedro-7:
Upload souboru zvládám ;) Jde mi přesně o to co psal jenikkozak :)
Davex
Profil
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
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
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 *
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
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.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: