Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

classe php archivio corrotto

Linguaggi e sistemi

Moderatori: Foto UtentePaolino, Foto Utentefairyvilje

0
voti

[1] classe php archivio corrotto

Messaggioda Foto UtenteDaniele78 » 26 lug 2010, 16:46

Ho utilizzato la classe php col relativo esempio scaricata da http://www.phpclasses.org/browse/package/2322.html

Sul server ubuntu ha funzionato senza dover configurare niente.

Sul windows server 2003 mi crea l' archivio zip normalmente senza visualizzare alcun errore.

Quando cerco di aprirlo visualizzo il seguente messaggio:

Archivio danneggiato. Inaspettata fine dell' archivio.

Ho letto in giro che bisognava configurare i file di php e Apache

nel php.ini bisognava togliere il commento da:

extension=php_zip.dll e da extension=php_zlib.dll

Quest' ultima riga mancava e l' ho aggiunta aggiungendo anche php_zlib.dll nella cartella ext dove si trovava già php_zip.dll

Nel file httpd.conf ho fatto ho tolto i commenti da alcune righe

AddType application/x-gzip .tgz
AddEncoding x-compress .Z
AddEncoding x-gzip .gz .tgz
AddEncoding x-compress .Z
AddEncoding x-gzip .gz .tgz

Ho riavviato ma continuo ad avere lo stesso problema.

Non so più cosa fare
Avatar utente
Foto UtenteDaniele78
290 2 9
Expert
Expert
 
Messaggi: 288
Iscritto il: 9 set 2008, 23:07

0
voti

[2] Re: classe php archivio corrotto

Messaggioda Foto Utenteangus » 27 lug 2010, 9:57

prova a dirci almeno la versione di PHP, di Apache, delle librerie coinvolte, la parte rilevante di phpinfo(), il codice che stai usando e magari allega un file .ZIP generato che ti da l'errore quando lo apri.
in /dev/null no one can hear you scream
Avatar utente
Foto Utenteangus
8.490 4 6 9
G.Master EY
G.Master EY
 
Messaggi: 4172
Iscritto il: 20 giu 2008, 17:25

0
voti

[3] Re: classe php archivio corrotto

Messaggioda Foto UtenteDaniele78 » 27 lug 2010, 15:32

Non avevo fatto caso alla possibilità di poter inviare allegati.
Ho cambiato classe. Sto utilizzando adesso una classe inclusa in php 5.
Incredibile funziona anche sul server windows.

Nell' esempio voglio comprimere la cartella varie e do il percorso rispetto al file php

Immagini/varie

All' interno del file varie.zip mi ritrovo la cartella Immagini con all' interno la cartella varie con all' interno il contenuto della cartella varie.

A me interessa avere all' interno della cartella varie solo il contenuto della cartella varie.

Sembra semplice da fare ma non ci sto riuscendo.

Grazie per l' aiuto.
Allegati
func_file.pdf
file php creazione archivio zip
(33.8 KiB) Scaricato 71 volte
Avatar utente
Foto UtenteDaniele78
290 2 9
Expert
Expert
 
Messaggi: 288
Iscritto il: 9 set 2008, 23:07

0
voti

[4] Re: classe php archivio corrotto

Messaggioda Foto UtenteDaniele78 » 28 lug 2010, 12:05

Ho letto che il percorso interno della cartella va specificato con $relative_path in:
$zip->addFile($file, $relative_path);

Adesso provo e vediamo
Avatar utente
Foto UtenteDaniele78
290 2 9
Expert
Expert
 
Messaggi: 288
Iscritto il: 9 set 2008, 23:07

0
voti

[5] Re: classe php archivio corrotto

Messaggioda Foto UtenteDaniele78 » 28 lug 2010, 13:57

Ho risolto con:

if(strstr($file,$fileDir, 0)!=false) { //cioè dirname($file) è sottodirectory di $fileDir

//separo la sottodirectory

$end_del= strripos(dirname($file),$fileDir) + strlen($fileDir); //dovrò cancellare da 0 a $end_del

$zip->addFile($file, substr($file, $end_del));

}

else{
$zip->addFile($file); // aggiungo in ogni caso
}
Avatar utente
Foto UtenteDaniele78
290 2 9
Expert
Expert
 
Messaggi: 288
Iscritto il: 9 set 2008, 23:07


Torna a PC e informatica

Chi c’è in linea

Visitano il forum: Nessuno e 5 ospiti