Thumbnails generieren -> schlechte qualität

chrime
Problembeschreibung:
Hochgeladene Bilder sehen qualitativ schlecht aus. (eigenes Upload Script)

Fehlermeldung:
keine ausser das das erstellte thumb schlecht ausschaut

Link zum Forum oder Screenshot:
http://www.surftoday.de/reports.php?w=view&zeit=1140947943

Was wurde zuletzt geändert oder eingebaut?
ein eigener bilder upload hack wurde von mir geschrieben, die thumbnails sehen schlecht aus, hier der code:
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
<?php
require('./global.php');
$time= time();


if($_GET['w']==overview) {

$sql = "SELECT * FROM bb1_reports ORDER BY zeit DESC";
$result= mysql_query($sql) or die(mysql_error());
$num = mysql_num_rows($result);
for ($i=0; $i<$num; $i++)
 {
$reps = mysql_fetch_array ($result) ;
 $datum = date("d.m.Y",$reps['zeit']);
 eval("\$reportsbit.= \"".$tpl->get("reportsbit")."\";");
 }
eval("\$tpl->output(\"".$tpl->get("reports")."\");");  
} elseif($_GET['w']==view) {
$sql = "SELECT * FROM bb1_reports WHERE zeit='".$_GET['zeit']."'";
$result= mysql_query($sql) or die(mysql_error());
$rep1 = mysql_fetch_array ($result) ;

$sql = "SELECT * FROM bb1_reports_pics WHERE zeit='".$_GET['zeit']."'";
$result= mysql_query($sql) or die(mysql_error());
$num = mysql_num_rows($result);
for ($i=0; $i<$num; $i++)
 {
$rep2 = mysql_fetch_array ($result) ;
 eval("\$reports_view_bit.= \"".$tpl->get("reports_view_bit")."\";");
 }

eval("\$tpl->output(\"".$tpl->get("reports_view")."\");");
} elseif($_GET['w']==add) {
eval("\$tpl->output(\"".$tpl->get("reports_add")."\");");
} elseif($_GET['w']==add2) {
if($r_text=="") { $add_ok = "<b>Bitte fülle das Nachrichten Feld aus</b><br /><br />"; eval("\$tpl->output(\"".$tpl->get("reports_add")."\");");
} else {
$eintrag = "INSERT INTO `bb1_reports` (`zeit`, `from`, `text`, `heading`) VALUES ('".$_GET["zeit"]."', '".$wbbuserdata["username"]."', '".$_POST[r_text]."', '".$_POST["r_heading"]."')";
$eintragen = mysql_query($eintrag) or die (mysql_error());

$add_ok = "<b>Danke f&uuml;r deinen Eintrag</b><br /><br />"; eval("\$tpl->output(\"".$tpl->get("reports_add")."\");");
}
} elseif($_GET['w']==add_pic) {
eval("\$tpl->output(\"".$tpl->get("reports_add_pic")."\");");
} elseif($_GET['w']==upload) {
$dateiname=$HTTP_POST_FILES['datei']['name'];
copy($datei, "report_pics/$_GET[zeit]$dateiname");
$groesse=getimagesize("report_pics/$_GET[zeit]$dateiname");
$breite=$groesse[0];
$hoehe=$groesse[1];
$typ=$groesse[2];
# print $typ;
$hoehe2=$hoehe*260/$breite;
$image1 = imagecreate(320,$hoehe2);
switch ($typ)
{
case 1:
$image = imagecreatefromgif("report_pics/$_GET[zeit]$dateiname");
break;
case 2:
$image = imagecreatefromjpeg("report_pics/$_GET[zeit]$dateiname");
break;
case 3:
$image = imagecreatefrompng("report_pics/$_GET[zeit]$dateiname");
break;
case 4:
$image = imagecreatefromwbmp("report_pics/$_GET[zeit]$dateiname");
break;
default: $gestorben="ja";
}
imagecopyresized($image1, $image, 0,0, 0,0,260,$hoehe2,$breite,$hoehe);

switch ($typ)
{
case 1:
imagegif($image1,"report_pics/thumbs/$_GET[zeit]$dateiname");
break;
case 2:
imagejpeg($image1,"report_pics/thumbs/$_GET[zeit]$dateiname");
break;
case 3:
imagepng($image1,"report_pics/thumbs/$_GET[zeit]$dateiname");
break;
case 4:
imagewbmp($image1,"report_pics/thumbs/$_GET[zeit]$dateiname");
break;
default: $gestorben="ja";
}
$eintrag = "INSERT INTO bb1_reports_pics (caption, path, zeit) VALUES ('$_POST[p_cap]', '$dateiname', '$_GET[zeit]')";
$eintragen = mysql_query($eintrag) or die (mysql_error());

eval("\$tpl->output(\"".$tpl->get("reports_add_pic_ok")."\");");
} else {
header("Location: reports.php?w=overview");
exit;
}
?>


Die unterre Sektion sollte von beudeutung sein, weil da die qualität nicht stimmt beim erstellen des thumbs, ich hoffe mir kann einer helfen.
KleenMicha
Da dies nichts mit dem Forum zutun hat: Thema verschoben.