<?php
$maxsave=10485760;
$minwidth=10;
$minheight=10;
$maxpics=100;
$maxsize=614400;
$usepics=0;
$usesave=0;
$error=0;
$info=$_POST['info'];
$catid=$_POST['kategorie'];
$sql2="SELECT * FROM galerie_pics WHERE uid='$myid'";
$data2=mysql_query($sql2, $db);
while ($us=mysql_fetch_object($data2))
{
$usepics++;
$usesave=$usesave + $us->groesse;
}
if ($_REQUEST['upload'])
{
if (isset($_FILES['bild']))
{
$bilder=count($_FILES['bild']);
$bild_anzahl=0;
for ($i=0; $i<$bilder; $i++)
{
if ($_FILES['bild']['error'][$i]!=4)
{
$bild_anzahl++;
}
}
}
$sql2="SELECT * FROM galerie_cat WHERE id='$catid'";
$data2=mysql_query($sql2, $db);
while ($parent=mysql_fetch_object($data2))
{
$parentcat=$parent->parentlist;
$schreiben=$parent->schreiben;
$lesen=$parent->lesen;
}
if ($access<$schreiben)
{
$error++;
$msg="- Sie haben keine Rechte in diese Kategorie Bilder hochzuladen.<br />";
}
if (empty($catid))
{
$error++;
$msg="$msg- Keine Kategorie ausgewählt.<br />";
}
for ($i=0; $i<$bild_anzahl; $i++)
{
$timestamp=time();
$tempname="temp_".$timestamp.$i;
$pic_name = $_FILES['bild']['name'][$i];
$pic_size = $_FILES['bild']['size'][$i];
$pic_tmp = $_FILES['bild']['tmp_name'][$i];
$pic_err = $_FILES['bild']['error'][$i];
$pic_type = getimagesize($pic_tmp);
$sql3="SELECT * FROM galerie_pics WHERE uid='$myid'";
$data3=mysql_query($sql3, $db);
while ($us=mysql_fetch_object($data3))
{
$usesave=0;
$usepics=0;
$usepics++;
$usesave=$usesave + $us->groesse;
}
$filetyp=0;
if ($pic_type[2] == "1") { $filetyp++; $type="gif";}
if ($pic_type[2] == "2" ) { $filetyp++; $type="jpg";}
if ($pic_type[2] == "3") { $filetyp++; $type="png";}
if (empty($filetyp))
{
$error++;
$msg="$msg- Die Datei \"$pic_name\" ist keine jpeg, gif oder png.<br />";
}
if ($pic_size>$maxsize)
{
$error++;
$maxsize=$maxsize / 1024;
$msg="$msg - Die Datei \"$pic_name\" ist größer als $maxsize Kb.<br />";
}
if ($maxsave<=$usesave)
{
$error++;
$msg="$msg - Ihr verfügbarer Speicher ist aufgebraucht. <br />";
}
elseif (($maxsave + $pic_size)<=$usesave)
{
$error++;
$msg="$msg - Ihr verfügbarer Speicher reicht nicht um \"$pic_name\" hochzuladen. <br />";
}
if ($maxpics<=$usepics)
{
$error++;
$msg="$msg - Die maximale Anzahl an Bildern ist erreicht. <br />";
}
switch ($pic_err)
{
case 1:
$error++;
$msg="$msg - Die Datei überschreitet den maximal Upload des Servers.<br />";
break;
case 2:
$error++;
$msg="$msg - Die Datei überschreitet den maximal Upload des Scripts.<br />";
break;
case 3:
$error++;
$msg="$msg - Die Datei wurde nur teilweise hochgeladen.<br />";
break;
case 4:
$error++;
$msg="$msg - Es wurde keine Datei hochgeladen.<br />";
break;
}
if (empty($error))
{
$size=getimagesize($pic_tmp);
if (move_uploaded_file ($pic_tmp, "ONLINE/galerie/bilder/$tempname.$type"))
{
chmod("ONLINE/galerie/bilder/$tempname.$type", 0777);
$sql="INSERT INTO galerie_pics (uid, catid, parentcat, name, breite, hoehe, groesse, views, typ, datum, info, gespeert, access) VALUES ('$myid', '$catid', '$parentcat', '$tempname', '$size[0]', '$size[1]', '$pic_size', '0', '$type', '$timestamp', '$info', '0', '$lesen')";
$sqlaction=mysql_query($sql, $db);
$sql2="SELECT * FROM galerie_pics WHERE name='$tempname' AND datum='$timestamp'";
$data2=mysql_query($sql2, $db) or die(mysql_error());
$rename=mysql_fetch_object($data2);
$renameid="$rename->id";
$breite=$size[0];
$hoehe=$size[1];
if ($breite>1024 AND $hoehe>768 AND $breite>$hoehe)
{
$nwidth_big=1024;
$nheight_big=$hoehe * $nwidth_big / $breite;
$nheight_big=round($nheight_big);
}
elseif ($breite>768 AND $hoehe>1024 AND $breite<$hoehe)
{
$nheight_big=1024;
$nwidth_big=$breite / $hoehe * $nheight_big;
$nwidth_big=round($nwidth_big);
}
else
{
$nheight_big=$hoehe;
$nwidth_big=$breite;
}
rename("ONLINE/galerie/bilder/$tempname.$type", "ONLINE/galerie/bilder/$renameid.$type");
// Wasserzeichen hinzufügen
if ($type=="jpg")
{
$wasserzeichen=ImageCreateFromPNG("ONLINE/galerie/bilder/watermark.png");
$color = imagecolorallocate($wasserzeichen, 255, 255, 255);
imagestring($wasserzeichen, 3, 10, 10, "(c) $user", $color);
$bild_alt=ImageCreateFromJPEG("ONLINE/galerie/bilder/$renameid.$type");
$bild_neu=imageCreateTrueColor($nwidth_big,$nheight_big);
imagecopyresampled($bild_neu,$bild_alt,0,0,0,0,$nwidth_big,$nheight_big,$breite,$hoehe);
$x = imagesx($wasserzeichen);
$y = imagesy($wasserzeichen);
$x = imagesx($bild_neu) - $x;
$y = imagesy($bild_neu) - $y;
ImageCopy($bild_neu, $wasserzeichen, $x, $y, 0 , 0, $nwidth_big,$nheight_big);
ImageJPEG($bild_neu,"ONLINE/galerie/bilder/$renameid.$type", 90);
$new_size=filesize("ONLINE/galerie/bilder/$renameid.$type");
$update="UPDATE galerie_pics SET groesse='$new_size', breite='$nwidth_big', hoehe='$nheight_big' WHERE id='$renameid'";
$sqlaction=mysql_query($update, $db);
}
elseif ($type=="gif")
{
$wasserzeichen=ImageCreateFromPNG("ONLINE/galerie/bilder/watermark.png");
$color = imagecolorallocate($wasserzeichen, 255, 255, 255);
imagestring($wasserzeichen, 3, 10, 10, "(c) $user", $color);
$bild_alt=ImageCreateFromGIF("ONLINE/galerie/bilder/$renameid.$type");
$bild_neu=imageCreateTrueColor($nwidth_big,$nheight_big);
$color = imagecolorallocate($bild_neu, 255, 255, 255);
imagecopyresampled($bild_neu,$bild_alt,0,0,0,0,$nwidth_big,$nheight_big,$breite,$hoehe);
$x = imagesx($wasserzeichen);
$y = imagesy($wasserzeichen);
$x = imagesx($bild_neu) - $x;
$y = imagesy($bild_neu) - $y;
ImageCopy($bild_neu, $wasserzeichen, $x, $y, 0 , 0, $nwidth_big,$nheight_big);
ImageGIF($bild_neu,"ONLINE/galerie/bilder/$renameid.$type", 90);
$new_size=filesize("ONLINE/galerie/bilder/$renameid.$type");
$update="UPDATE galerie_pics SET groesse='$new_size', breite='$nwidth_big', hoehe='$nheight_big' WHERE id='$renameid'";
$sqlaction=mysql_query($update, $db);
}
elseif ($type=="png")
{
$wasserzeichen=ImageCreateFromPNG("ONLINE/galerie/bilder/watermark.png");
$color = imagecolorallocate($wasserzeichen, 255, 255, 255);
imagestring($wasserzeichen, 3, 10, 10, "(c) $user", $color);
$bild_alt=ImageCreateFromPNG("ONLINE/galerie/bilder/$renameid.$type");
$bild_neu=imageCreateTrueColor($nwidth_big,$nheight_big);
$color = imagecolorallocate($bild_neu, 255, 255, 255);
imagecopyresampled($bild_neu,$bild_alt,0,0,0,0,$nwidth_big,$nheight_big,$breite,$hoehe);
$x = imagesx($wasserzeichen);
$y = imagesy($wasserzeichen);
$x = imagesx($bild_neu) - $x;
$y = imagesy($bild_neu) - $y;
ImageCopy($bild_neu, $wasserzeichen, $x, $y, 0 , 0, $nwidth_big,$nheight_big);
ImagePNG($bild_neu,"ONLINE/galerie/bilder/$renameid.$type");
$new_size=filesize("ONLINE/galerie/bilder/$renameid.$type");
$update="UPDATE galerie_pics SET groesse='$new_size', breite='$nwidth_big', hoehe='$nheight_big' WHERE id='$renameid'";
$sqlaction=mysql_query($update, $db);
}
// Miniatur Bilder erstellen
if ($nwidth_big>$nheight_big)
{
$nwidth=120;
$nheight=$nheight_big * $nwidth / $nwidth_big;
$nheight=round($nheight);
}
else
{
$nheight=120;
$nwidth=$nwidth_big / $nheight_big * $nheight;
$nwidth=round($nwidth);
}
if ($type=="jpg")
{
$bild_gross=ImageCreateFromJPEG("ONLINE/galerie/bilder/$renameid.$type");
$bild_klein=imageCreateTrueColor($nwidth,$nheight);
imagecopyresampled($bild_klein,$bild_gross,0,0,0,0,$nwidth,$nheight,$nwidth_big,$nheight_big);
ImageJPEG($bild_klein,"ONLINE/galerie/bilder_klein/klein_$renameid.$type", 100);
}
elseif ($type=="gif")
{
$bild_gross=ImageCreateFromGIF("ONLINE/galerie/bilder/$renameid.$type");
$bild_klein=imageCreateTrueColor($nwidth,$nheight);
imagecopyresampled($bild_klein,$bild_gross,0,0,0,0,$nwidth,$nheight,$nwidth_big,$nheight_big);
ImageGIF($bild_klein,"ONLINE/galerie/bilder_klein/klein_$renameid.$type", 100);
}
elseif ($type=="png")
{
$bild_gross=ImageCreateFromPNG("ONLINE/galerie/bilder/$renameid.$type");
$bild_klein=imageCreateTrueColor($nwidth,$nheight);
imagecopyresampled($bild_klein,$bild_gross,0,0,0,0,$nwidth,$nheight,$nwidth_big,$nheight_big);
ImagePNG($bild_klein,"ONLINE/galerie/bilder_klein/klein_$renameid.$type");
}
// Potd Bilder erstellen
if ($nwidth_big>$nheight_big)
{
$nwidth=120;
$nheight=$nheight_big * $nwidth / $nwidth_big;
$nheight=round($nheight);
}
else
{
$nheight=120;
$nwidth=$nwidth_big / $nheight_big * $nheight;
$nwidth=round($nwidth);
}
if ($type=="jpg")
{
$bild_gross=ImageCreateFromJPEG("ONLINE/galerie/bilder/$renameid.$type");
$bild_klein=imageCreateTrueColor($nwidth,$nheight);
imagecopyresampled($bild_klein,$bild_gross,0,0,0,0,$nwidth,$nheight,$nwidth_big,$nheight_big);
ImageJPEG($bild_klein,"ONLINE/galerie/bilder_potd/potd_$renameid.$type", 90);
}
elseif ($type=="gif")
{
$bild_gross=ImageCreateFromGIF("ONLINE/galerie/bilder/$renameid.$type");
$bild_klein=imageCreateTrueColor($nwidth,$nheight);
imagecopyresampled($bild_klein,$bild_gross,0,0,0,0,$nwidth,$nheight,$nwidth_big,$nheight_big);
ImageGIF($bild_klein,"ONLINE/galerie/bilder_potd/potd_$renameid.$type", 90);
}
elseif ($type=="png")
{
$bild_gross=ImageCreateFromPNG("ONLINE/galerie/bilder/$renameid.$type");
$bild_klein=imageCreateTrueColor($nwidth,$nheight);
imagecopyresampled($bild_klein,$bild_gross,0,0,0,0,$nwidth,$nheight,$nwidth_big,$nheight_big);
ImagePNG($bild_klein,"ONLINE/galerie/bilder_potd/potd_$renameid.$type");
}
echo "Das Bild \"$pic_name\" wurde erfolgreich hochgeladen. [<a href='index.php?show=galeriepicadd'>weiter</a>]<br />";
}
else
{
$error++;
echo "$msg - Beim upload des Bildes \"$pic_name\" ist ein Fehler aufgetreten. <br />";
}
}
}
}
?>