zip_entry_read() nevrací nic
10 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
ahoj.. dlouho jsem tu neřešil žádnej problém a cca po roce jsem se vrátil abych otravoval. mám skript, jehož účelem je uploadnout zip archív ve kterém jsou fotky a komentáře, rozbalit ho, zpracovat ho a zařadit do galerie. Samozřejmě že doma mi funguje v pohodě /ano, mám jinou verzi php/, ale na wztku ne-e. Zde je problémová část: $size=zip_entry_filesize($zip_entry); fwrite($fp, zip_entry_read($zip_entry, $size)); fclose($fp); zip_entry_close($zip_entry); jsem si jist, že $zip_entry je "a directory entry returned by zip_read()" /jak se píše v manuálu/ a že $size je nějaká velikost souboru. Přesto mi funkce zip_entry_read() nevrátí nic. Problém jsem nenašel. Napadlo mě snad jenom jestli není problém v kompresi nebo programu použitém k balení.. (pokud si dobře pamatuju, testovací archív byl zabalen ve WinRaru 3.70) tak co.. pomůžete mi?
-
hm, nikdy jsem toto na wz nezkousel ... jenom si tak nejsem jisty jestli je na wz zipovaci knihovna ... ale jestli ctu dobre tak v phpinfo je ... zip_entry_filesize() ti funguje bez problemu? jestli jo tak je problem nvm kde :)
-
v phpinfo je podpora zip nactena.. zip_entry_filesize() mi vraci spravnou hodnotu velikosti souboru .. taky netusim ;)
-
"Přesto mi funkce zip_entry_read() nevrátí nic." Není možná, pokud je opravdu tahle featura podporována, tak něco vracet musí ať chceš nebo nee. error_reporting(E_ALL) -> Memory_limit , set-time-limit , etc ...
-
mno.. nápad dobrej.. na začátek souboru sem teda vrazil error_reporting(E_ALL); a kromě toho že sem zapomněl jedny uvozovky v jedněch hranatejch závorkách jsem se nic nového nedověděl. Funkce tedy nevrací chybu. Takže si asi myslí že to co dělá dělá dobře, ale nedělá to dobře. set_time_limit() na wz použít nelze, funkce je zakázaná. pochybuju že bude problém s pamětí při rozbalování souboru pod 1MB nevrací nic co by bylo vidět.
-
Tak navhuji udelat jedno ... tu cast ktera dela divne veci proste zakomentuj (nemaz) a vedle si udelej treba jenom echo zip_entry_read(...); a zkus co ti to vyplivne ... pripadne to zkus bez parametru $size .... jenom me tak napada... zip_entry_filesize() vraci aktualni velikost slozky (souboru) , ale zip_entry_read() ma 2. parametr size jako velikost uncompresed .... to by mohlo delat ty problemy ....
-
A zkousel jsi i ten priklad uvedeny v diskuzi? http://cz.php.net/manual/cs/function.zip-entry-read.php Jinak hadam bokem, ale neni k tomuto ucelu potreba PECL, ktere na WZ neni?
-
Freeze: to sem taky provadel. zip_entry_read() nic nevyplivlo v zadnem pripade. Tomik: zkusil jsem na wztku, zkusil jsem doma.. ale jak si hadal bokem tak sem se bokem kouknul a prej to chce knihovnu ZZIPlib, kterou sem v phpinfu nenasel. takze jediny co mi asi zbejva je zavolat "haloo, prosim zprovoznite podporu zip?", zejo..
-
Nevim teda jak s tim PECLem, ale uplne stejne 'pozadavky' jako zip_entry_read() - ktera nedela zrejme nic - mai funkce zip_entry_filesize() - ktera zrejme funguje bez problemu ... (proto jsem se predtim ptal jeslti zip_entry_filesize funguje :) )
-
oukej.. takže je chyba ve webzdarmí PHP zip extension?