LoS Skrevet 27. mai 2004 Del Skrevet 27. mai 2004 Jeg som hadde tenkt å klare meg uten hjelp videre, men neida Til saken, har skrevet ett bildeupload script. Har skrevet ett før, men det scriptet funket ikke i explorer, så jeg måtte skrive ett nytt. Det gamle funka ihvertfall. Får denne feilen: Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 1632 bytes) in /blablabla/bla/galleri.php on line 32 Scriptet ser slik ut: $path = "/bla/bla/bla/bla/bilder/".$_POST['kid']."/"; if ($_FILES['userfile']) { $temp_name = $_FILES['userfile']['tmp_name']; $file_name = $_FILES['userfile']['name']; if (file_exists($path . $file_name)) { echo "Filen eksisterer!<br />"; exit; } $res = copy($temp_name, $path.$file_name); if (!$res) { echo "Opplastningen feilet!<br />"; exit; } else { echo "<br />"; } $fil=$path.$file_name; // kjøre en funksjon! $target=80; $size = getimagesize("$fil"); if ($size[0] > $size[1]) { $percentage = ($target / $size[0]); } else { $percentage = ($target / $size[1]); } $width = round($size[0] * $percentage); $height = round($size[1] * $percentage); $abc = imagecreatefromjpeg($fil); // HER ER LINJE 32! $thumb=$path."thumb".$file_name; $def = imagecreatetruecolor($width, $height); imagecopyresized($def, $abc, 0, 0, 0, 0, $width, $height, $size[0], $size[1]); imagejpeg($def, $thumb, 100); // kjøre funksjonen en gang til! $target=480; if ($size[0] > $size[1]) { $percentage = ($target / $size[0]); } else { $percentage = ($target / $size[1]); } $width = round($size[0] * $percentage); $height = round($size[1] * $percentage); $thumb=$path . $file_name; imagecopyresized($def, $abc, 0, 0, 0, 0, $width, $height, $size[0], $size[1]); imagejpeg($def, $thumb, 100); // :D ImageDestroy($abc); ImageDestroy($def); echo 'Bilde ble lagt til'; $sql->query("INSERT INTO bilder (kid, bilde, info) VALUES('{$_POST["kid"]}', '".$file_name."', '{$_POST["info"]}')"); Uansett hva jeg prøver å gjøre så får jeg den feilen når jeg laster opp filer Takker for all hjelp her, har sitti i hele dag og sett meg totalt blind på koden :/ Lenke til kommentar
The Red Devil Skrevet 27. mai 2004 Del Skrevet 27. mai 2004 Er php instillingene satt til å akseptere større opplastninger enn 250kb ? Eller apache for densaks skyld, vist den er kompilert med automatisk settings så er limiten på 200kb, (var iallefall det den versjonen eg installerte eit par måneder siden) så du må forandre instillingene på den. Lenke til kommentar
jorgis Skrevet 27. mai 2004 Del Skrevet 27. mai 2004 Var ikke maksgrense for upload til PHP på 65MB (eller var det 4MB? ), ikke 200KB? Har hatt bildeuploadsscript som har lastet opp filer på over 2MB, ihvertfall. Lenke til kommentar
LoS Skrevet 27. mai 2004 Forfatter Del Skrevet 27. mai 2004 Er php instillingene satt til å akseptere større opplastninger enn 250kb ? Eller apache for densaks skyld, vist den er kompilert med automatisk settings så er limiten på 200kb, (var iallefall det den versjonen eg installerte eit par måneder siden) så du må forandre instillingene på den. Det var dette jeg prøvde å få fram med "jeg har lagd ett før som funka, men det funka ikke i explorer". Skulle kanskje sagt det rett ut egentlig. Men jeg har ett script som funker i alt annet enn IE, og der kan jeg laste opp veldig store filer. Det er dette scripet som funker i explorer, men da begynner brått php å slite For dem som skumleser innlegget mitt; jeg har skrevet inn i koden hvor linje 32 er Er så plagsomt å få 1000 linjer kode og feil på linje 305, og ingen sier hvor linje 305, er ikke sant? *flink* Lenke til kommentar
Nervetattoo Skrevet 28. mai 2004 Del Skrevet 28. mai 2004 200Kb, om det ikke er begrensninger satt i apache eller php eller formen med tanke på antal bytes. Kan jo komme ann på max script execution time satt i php. Om du har treg linje så kan jo 200Kb ta litt tid å laste opp. Lenke til kommentar
LoS Skrevet 28. mai 2004 Forfatter Del Skrevet 28. mai 2004 Okay. Nå skal jeg fortelle i detaljser her 1 - Hva skjer? - bildet lastes opp, det ligger i mappen det skal ligge, men det blir ikke resizet, og det blir ikke lagt til i databasen. 2 - Fila for stor? - nei, bildet lastes jo opp, og jeg har skrevet ett upload script som funker med så store filer. Men som sagt, så måtte jeg skrive ett nytt ett, fordi scriptet ikke funka i IE. 3 - For treigt linje? - Jeg sitter med 100Mbit, full duplex til serveren. Da den står på nettverket her. Håper jeg klarte opp litt nå. Det er tydeligvis en feil i scriptet som kun kommer når den skal lage filen på nytt, da den er veldig stor, (omtrent 1600x1200px) Lenke til kommentar
Nervetattoo Skrevet 28. mai 2004 Del Skrevet 28. mai 2004 Feilmeldingen indikerer at bildet er for stort. Kan virke som det er for stort for imagecreatefromjpeg() funksjonen, prøvde å finne noe info om begrensninger i manualen, men fant ikke noe. Kan du prøve med et mindre bilde og se om du får samme feilmeldingen? 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å