Bakke Skrevet 29. januar 2009 Del Skrevet 29. januar 2009 (endret) Holder på å lage en funksjon som skal laste fotoalbum opp på en server. For å kunne laste opp mange bilder av gangen, har jeg valgt å laste dem opp som en zip-fil. Dessverre får jeg ikke zip_read() til å fungere som den skal. Har letet rundt på nettet en stund nå, men ingen av løsningene jeg finner fungerer for meg. Her er unzip-funksjonen: function unzip($zip, $dir_name) { echo "Zip-fil: $zip"; while($zip_entry = zip_read($zip)) { $fp = fopen('./images/gallery/' . $dir_name, zip_entry_name($zip_entry), "w"); if (zip_entry_open($zip, $zip_entry, "r")) { $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry)); fwrite($fp,"$buf"); zip_entry_close($zip_entry); fclose($fp); } } Feilmeldingen jeg får er: Zip-fil: /home/bakke/webserver/paintball/images/temp/test.tar.gzWarning: zip_read() expects parameter 1 to be resource, string given in /home/bakke/webserver/paintball/modules/pictures.php on line 102 Warning: zip_close() expects parameter 1 to be resource, string given in /home/bakke/webserver/paintball/modules/pictures.php on line 115 Takker for svar Edit: Jeg bruker forresten den fulle stien til zip-filen: $zip = getcwd() . "/images/temp/" . $_FILES['album']['name']; Endret 29. januar 2009 av Bakke Lenke til kommentar
Ernie Skrevet 29. januar 2009 Del Skrevet 29. januar 2009 (endret) Som feilmeldingen sier, den trenger en «resource» og ikke en «string». I dette tilfellet skal den komme fra zip_open(...). Endret 29. januar 2009 av Ernie Lenke til kommentar
Bakke Skrevet 29. januar 2009 Forfatter Del Skrevet 29. januar 2009 (endret) Oisann, litt tidlig på morgenen dette Nå har jeg endret koden og selvfølgelig lagt inn zip_open(), men får fortsatt den samme feilmeldingen function unzip($zip, $dir_name) { echo "Zip-fil: $zip"; $zip_open = zip_open($zip); while($zip_entry = zip_read($zip_open)) { $fp = fopen('./images/gallery/' . $dir_name, zip_entry_name($zip_entry), "w"); if (zip_entry_open($zip, $zip_entry, "r")) { $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry)); fwrite($fp,"$buf"); zip_entry_close($zip_entry); fclose($fp); } } zip_close($zip); } Endret 29. januar 2009 av Bakke Lenke til kommentar
Martin A. Skrevet 29. januar 2009 Del Skrevet 29. januar 2009 http://no.php.net/manual/en/function.zip-read.php#78140 Kan det kanskje være problemet? Lenke til kommentar
Bakke Skrevet 29. januar 2009 Forfatter Del Skrevet 29. januar 2009 (endret) Har lest den, men det er ikke problemet Jeg har tatt med hele stien til zip-filen... Endret 29. januar 2009 av Bakke Lenke til kommentar
Ernie Skrevet 29. januar 2009 Del Skrevet 29. januar 2009 Vel, neste skritt må jo da bli å finne ut hva $zip_open faktisk inneholder og sjekke det opp mot http://no.php.net/manual/en/zip.constants.php#83827 Lenke til kommentar
Bakke Skrevet 29. januar 2009 Forfatter Del Skrevet 29. januar 2009 Vel, neste skritt må jo da bli å finne ut hva $zip_open faktisk inneholder og sjekke det opp mot http://no.php.net/manual/en/zip.constants.php#83827 ...og da viste det seg at den ikke støttet kompresjons metoden. Takker så mye for hjelpen, men nå må jeg nok uansett finne en annen løsning. Fant nemlig også ut at webserveren, hvor siden skal lastes opp, ikke støtter zip funksjonene Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå