Accedi per seguire   
Seguaci 0
spiug

Aprire Archivi Zip

8 messaggi in questa discussione

Premetto che sul mio server è installata la versione 4.4.7 del PHP (hosting di Aruba).

Ho provato ad aprire un file in sola lettura (con le funzioni che si possono trovare in questa pagina http://it2.php.net/zip)...però mi restituisce questo errore:

Fatal error:  Call to undefined function: zip_open() in /web/htdocs/www.symbianfree.it/home/resize.php on line 67

Significa forse che non è installato il modulo ZZIPlib, o che forse non è attivato?? :P

Cosa posso fare, come posso vedere e sistemare la situazione?? :angel_not:

Sono già presenti e attive queste funzioni e sono io che sbaglio?! :)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Con phpinfo() puoi verificare quali moduli sono stati caricati. La libreria zip si chiama Libzip. Per il phpinfo() ti basta creare una pagina php con questo dentro:

<?php
 phpinfo();
?>

Ciao :)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

P.S. ho controllato su uno dei server su Aruba e libzip non è presente. :)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
P.S. ho controllato su uno dei server su Aruba e libzip non è presente. :)

Era quello che immaginavo... :P

E quindi cosa posso fare??

Non posso includere la libreria presente nel mio spazio web??

Chessò, un include della libzip?!

Qualche soluzione??

Oppure funziona questo cocice quà:

http://it2.php.net/manual/it/function.zip-open.php#56434 (ovvero sfruttando le librerie zip base dei sistemi linux dei server).

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Se ti permette di richiamare comandi dalla shell allora si, funziona. Ma su aruba dubito che qualcosa di simile sia permesso, io posso provarci appena mi libero un po'.

Quanto alla libreria secondo la guida PHP non si può includere se non attraverso la compilazione di php con tale libreria.

Per correttezza d'informazione la libreria zip su PHP 4 si chiama ZZIPlib:

- http://zziplib.sourceforge.net/

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Se ti permette di richiamare comandi dalla shell allora si, funziona. Ma su aruba dubito che qualcosa di simile sia permesso, io posso provarci appena mi libero un po'.

:P:P uffa...lo sapevo che che dato il basso costo i server Aruba erano una patacca... <_<

(non è che voglio fare pubblicità negativa, perchè per il resto mi sono sempre trovato benone :) )

Cereal, se hai un momento per fare questa prova te ne sarei infinitamente riconoscente. :P

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Vai tranquillo, unzip c'è, puoi testarlo con questo script:

<?php
$shell = shell_exec('unzip -v');
echo "<pre>$shell</pre>";
?> 

Non ho provato la funzione che mi hai indicato, ma non dovresti avere problemi, assicurati soltanto di lanciare lo script in una directory e non nella root. Come permessi imposta pure 755, dovrebbero bastare.

In alternativa puoi usare zlib, la libreria per gestire i file compressi in formato .gz le informazioni si trovano qui:

- http://www.php.net/zlib

Un esempio di creazione di un file .gz è questo:

<?php
$data = implode("", file("bigfile.txt"));
$gzdata = gzencode($data, 9);
$fp = fopen("bigfile.txt.gz", "w");
fwrite($fp, $gzdata);
fclose($fp);
?>

Esempio che trovi nella documentazione di php, alla voce gzencode. C'è da dire però che zlib non può creare archivi, cioè raggruppamenti di file. Ciao :)

Modificato da cereal

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Purtroppo il formato .GZ non è utilizzabile per i miei scopi. :P

Devo creare dei file Jar in output e quindi devo creare un archivio zip e poi rinominarlo.

Per adesso stò lavorando sul server di Wininizio che supporta tutte le librerie disponibili :)

...ma vorrei comunque passare lo script php sul server del mio sito.

Non ho provato la funzione che mi hai indicato, ma non dovresti avere problemi, assicurati soltanto di lanciare lo script in una directory e non nella root. Come permessi imposta pure 755, dovrebbero bastare.

Purtroppo non sò lavorare a shell :P

E se non ho a disposizione funzioni già disponibili sono rovinato. :P

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

Devi essere un utente registrato per partecipare

Crea un account

Iscriviti per un nuovo account nella nostra community. È facile!


Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.


Accedi Ora
Accedi per seguire   
Seguaci 0