Hallo zusammen,
ich habe Probleme beim Avatar hochladen und löschen. Finde den Fehler aber nicht. Wer kann mir helfen ???
Hier der Source-Code:
Und hier die passende Fehlermeldung... Komme einfach nicht drauf und habe schon fast alles versucht... Oder ich bin einfach nur zu dusselig...
[COLOR=#FCE94F]( ! )[/COLOR] Notice: Undefined index: Avatar in C:\xampp\htdocs\Mike Schnabl\PHP_AK_Projektarbeit\login\avatar.php on line 146 Call Stack #TimeMemoryFunctionLocation 10.0004324448{main}( )..\avatar.php:0 No Avatar
[COLOR=#FCE94F]( ! )[/COLOR] Notice: Undefined index: Avatar in C:\xampp\htdocs\Mike Schnabl\PHP_AK_Projektarbeit\login\avatar.php on line 158 Call Stack #TimeMemoryFunctionLocation 10.0004324448{main}( )..\avatar.php:0
Vielen Dank im voraus.....
ich habe Probleme beim Avatar hochladen und löschen. Finde den Fehler aber nicht. Wer kann mir helfen ???
Hier der Source-Code:
PHP-Code:
<?php
session_start();
error_reporting(E_ALL);
include("mysql.php");
include("functions.php");
include("autologout.php");
if(!isset($_SESSION['UserID'])) {
echo "Sie sind nicht eingeloggt.<br>\n".
"Bitte <a href=\"login.php\">loggen</a> Sie sich zuerst ein.\n";
}
else {
// Avatar hochladen
if(isset($_POST['submit']) AND $_POST['submit'] == "Avatar hochladen") {
$errors = array();
// Uploadfehler prüfen
switch ($_FILES['pic']['error']){
case 1: $errors[] = "Bitte wählen Sie eine Datei aus, die kleiner als 20 KB ist.";
break;
case 2: $errors[] = "Bitte wählen Sie eine Datei aus, die kleiner als 20 KB ist.";
break;
case 3: $errors[] = "Die Datei wurde nur teilweise hochgeladen.";
break;
case 4: $errors[] = "Es wurde keine Datei ausgewählt.";
break;
default : break;
}
// Prüfen, ob eine Grafikdatei vorliegt
if(!@getimagesize($_FILES['pic']['tmp_name']))
$errors[] = "Ihre Datei ist keine gültige Grafikdatei.";
else {
// Mime-Typ prüfen
$erlaubte_typen = array('image/pjpeg',
'image/jpeg',
'image/gif',
'image/png'
);
if(!in_array($_FILES['pic']['type'], $erlaubte_typen))
$errors[] = "Der Mime-Typ der Datei ist verboten.";
// Endung prüfen
$erlaubte_endungen = array('jpeg',
'jpg',
'gif',
'png'
);
$endung = strtolower(substr($_FILES['pic']['name'], strrpos($_FILES['pic']['name'], '.')+1));
if(!in_array($endung, $erlaubte_endungen))
$errors[] = "Die Dateiendung muss .jpeg .jpg .gif oder .png lauten ";
// Ausmaße prüfen
$size = getimagesize($_FILES['pic']['tmp_name']);
if ($size[0] > 150 OR $size[1] > 150)
$errors[] = "Die Datei darf maximal 150 Pixel breit und 150 Pixel hoch sein.";
}
// Dateigröße prüfen
if($_FILES['pic']['size'] > 0.2*1024*1024)
$errors[] = "Bitte wählen Sie eine Datei aus, die kleiner als 20 KB ist.";
if(count($errors)){
echo "Das Avatar konnte nicht gespeichert werden.<br>\n".
"<br>\n";
foreach($errors as $error)
echo $error."<br>\n";
}
else {
// Bild auf dem Server speichern
$uploaddir = 'avatare/';
// neuen Bildname erstellen
$Name = "IMG_".substr(microtime(),-8).".".$endung;
if (move_uploaded_file($_FILES['pic']['tmp_name'], $uploaddir.$Name)) {
$sql = "UPDATE
User
SET
Avatar = \" " . mysql_real_escape_string(trim($Name)) . " \"
WHERE
ID = \" " . $_SESSION['UserID'] . " \"
";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
echo "Das Avatar wurde erfolgreich gespeichert.<br>\n";
}
else {
echo "Es trat ein Fehler auf, bitte versuche es später erneut.<br>\n";
}
}
}
// Avatar löschen
elseif(isset($_POST['submit']) AND $_POST['submit'] == 'Avatar löschen') {
// Bildname des Avatars aus der Datenbank holen
$sql = "SELECT
Avatar
FROM
User
WHERE
ID = ' " . $_SESSION['UserID'] . " '
";
$result = mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
$row = mysql_fetch_assoc($result);
// Datei löschen
unlink('avatare/'.$row['Avatar']);
// Bildname des Avatars als leeren String setzen
$sql = "UPDATE
User
SET
Avatar = ''
WHERE
ID = '".$_SESSION['UserID']."'
";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
echo "Der Avatar wurde erfolgreich gelöscht.<br>\n";
}
// Avatar hochladen
echo "<form name='Avatar' action=\" " . $_SERVER['PHP_SELF'] . " \" method='POST' enctype='multipart\form-data'>\n";
echo "<table>\n";
echo "<tr>\n";
echo "<td colspan='2'>\n";
echo "<h4><br>Avatar hochladen</h4></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td class='lenght1'>Avatar: </td>\n";
echo "<td class='lenght1'>\n";
if($row['Avatar'] == '') {
echo "No Avatar";
}
else {
echo "<img src='avatare/' \" " . htmlentities($row['Avatar'], ENT_QUOTES) . " \">\n";
}
if ($row['Avatar'] == '') {
echo "<input class='round_input' type='hidden' name='MAX_FILE_SIZE' value=\" " . (0.02*1024*1024) . " \">\n";
echo "<input class='round_input' name='pic' type='file'>\n";
echo "<input class='round_input1' type='submit' name='submit' value='Avatar hochladen'>\n";
}
else {
echo "<input class='round_input1' type='submit' name='submit' value='Avatar löschen'>\n";
}
echo "</td>\n";
echo "</tr>\n";
echo "</table>\n";
echo "</form>\n";
}
?>
[COLOR=#FCE94F]( ! )[/COLOR] Notice: Undefined index: Avatar in C:\xampp\htdocs\Mike Schnabl\PHP_AK_Projektarbeit\login\avatar.php on line 146 Call Stack #TimeMemoryFunctionLocation 10.0004324448{main}( )..\avatar.php:0 No Avatar
[COLOR=#FCE94F]( ! )[/COLOR] Notice: Undefined index: Avatar in C:\xampp\htdocs\Mike Schnabl\PHP_AK_Projektarbeit\login\avatar.php on line 158 Call Stack #TimeMemoryFunctionLocation 10.0004324448{main}( )..\avatar.php:0
Vielen Dank im voraus.....
Kommentar