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');
$timetime();


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

$sql "SELECT * FROM bb1_reports ORDER BY zeit DESC";
$resultmysql_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']."'";
$resultmysql_query($sql) or die(mysql_error());
$rep1 mysql_fetch_array ($result) ;

$sql "SELECT * FROM bb1_reports_pics WHERE zeit='".$_GET['zeit']."'";
$resultmysql_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$image0,00,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.