Fejl i upload script
Hej,Jeg har et upload script der skal resize det uploadede billede og herefter gemme det og smide noget info om det ind i databasen. Det virker fint med små billeder, men når billedet er meget stort (ca. 3MP+) virker scriptet ikke så godt mere.
Der kommer fejl om max_user_connection og scriptet stopper. Jeg kan dog se at hele det 2mb store billede bliver uploadet. Det bliver dog ikke resized og der bliver heller ikke smidt info ind i databasen.
Har gået gennem scriptet flere gange, men kan ikke hvad der er galt.
På forhånd mange tak!
Koden:
<?php
$limitedext = array(".jpg",".jpeg", ".bmp");
$sizelimit = "ja";
$sizebytes = "200000";
if($_POST['skriv']=="doit"){
if ($_FILES['file'] != "") {
$ext=strrchr($_FILES['file']['name'],'.');
$ext=strtolower($ext);
$filnavnet = $_SERVER["DOCUMENT_ROOT"] . "/profilbillede/".$_SESSION['id'].$ext;
if (file_exists($filnavnet)) {
die("Billedet eksisterer allerede");
}
if (!in_array($ext,$limitedext) ) {
die("Filen er en forkert filtype. De tiladte filtyper er bmp og jpg/jpeg.");
}
if($ext==".bmp"){
if (($_FILES['file']['size'] > $sizebytes)) {
die("Billedet er for stort. En bmp-fil må højest fylde 200 kb.");
}
@copy($_FILES['file']['tmp_name'], $filnavnet) or die("Filen kunne ikke kopieres til serveren ".$filnavnet);
}else{
@copy($_FILES['file']['tmp_name'], $filnavnet) or die("Filen kunne ikke kopieres til serveren ".$filnavnet);
#-+ Read the source image
$src_img = ImageCreateFromJPEG($filnavnet);
#Vælg bredden
$tn_w = "160";
#Hent billedets bredde og højde
$imginfo = getimagesize($filnavnet);
$org_w= $imginfo[0];
$org_h = $imginfo[1];
#Beregn højden i forhold til bredden
$tn_h = floor($tn_w * $org_h / $org_w);
#Sæt det nye billede
$dst_img = imagecreatetruecolor($tn_w,$tn_h);
#Ændre det!
ImageCopyResampled($dst_img, $src_img, 0, 0, 0, 0, $tn_w, $tn_h, $org_w, $org_h);
#Gem det!
ImageJPEG($dst_img, $filnavnet);
#slet "midlertidige" filer fra serveren.
imagedestroy($dst_img);
}
} else {
die("Husk at vælge et Billede");
}
echo "<p />";
echo $_FILES['file']['name']." blev uploaded<br><img src=\"profilbillede/".$_SESSION[id].$ext."\">";
mysql_query("UPDATE users SET billede='".$_SESSION[id].$ext."' WHERE id='$_SESSION[id]'");
}else{
?>
<form method=POST action="index2.php?ske=minside&adr=upload" enctype="multipart/form-data">
<p>Vælg et Billed:<br>
<input type="hidden" name="skriv" value="doit" size="30">
<input type="file" name="file" size="30">
<p><button name="submit" type="submit" value="Upload">
Upload
</button>
</form>
<?
}
?>
