Gå til innhold

Zippe et helt album - memory exhausted


Anbefalte innlegg

Hei,

 

Jeg holder på å uvtikle et fotoalbum på nett. Funksjonen jeg holder på med nå skal gjøre slik at brukere skal kunne laste ned hele albummet sitt som en ZIP fil, slik de slipper å laste ned ett og ett bilde.

 

Hver bruker får sin egen filbane hvor alle bildene blir lagret, f.eks. "domene.no/sec/20100101/".

 

Problemet

Fatal error: Allowed memory size of 591396864 bytes exhausted (tried to allocate 190273742 bytes)

 

Å zippe 200 bilder på en gang går dårlig. Finnes det noen måte å legge til én og én fil til en eksisterende .ZIP? Eller enda lettere: finnes det noe som kan tillate brukeren å laste ned hele filbanen til albummet sitt, ved hjelp av force download?

 

Setter stor pris på all hjelp!

Lenke til kommentar
Videoannonse
Annonse

Det er sannsynligvis helt villt mye mer effektivt å gjøre dette i noe annet enn PHP. Da tipper jeg du også kommer rundt problemene relatert til manglende minne. Ta en titt på tar og shell_exec. Når det gjelder «force download», så aner jeg ikke hva du legger i det, men hvis du vil tvinge frem last-ned-dialogen i nettleseren, så kan dette gjøres ved å sette content-disposition til attachment.

Lenke til kommentar

Takk Jonas!

 

shell_exec var utrolig lett i forhold til å bruke PHP til å komprimere mapper..

 

Eneste koden jeg trengte var:

<?php

$FolderToCompress = "MAPPE";

echo shell_exec("tar --create --recursion --file=NAVN.tar $FolderToCompress");

echo "Tar done";
?> 

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...