true2010
|
User
|
|
registriert
|
01.07.2010
|
wohnt in
|
Deutschland
|
Beiträge
|
4
|
|
Hallo zusammen,
ich habe Probleme beim Avatar hochladen und löschen. Finde den Fehler aber nicht. Wer kann mir helfen ???
Hier der Source-Code:
PHP:
<?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";
}
?>
Und hier die Fehlermeldung im Browser:
( ! ) Notice: Undefined index: Avatar in C:\xampp\htdocs\Mike Schnabl\PHP_AK_Projektarbeit\login\avatar.php on line 146
Call Stack
# Time Memory Function Location
1 0.0004 324448 {main}( ) ..\avatar.php:0
No Avatar
( ! ) Notice: Undefined index: Avatar in C:\xampp\htdocs\Mike Schnabl\PHP_AK_Projektarbeit\login\avatar.php on line 158
Call Stack
# Time Memory Function Location
1 0.0004 324448 {main}( ) ..\avatar.php:0
Danke im voraus...
|
daxili
|
Forenposter
|
|
registriert
|
21.12.2011
|
wohnt in
|
|
Beiträge
|
50
|
|
The typical price of cooperation elevated from 66,73% within the original sequence to 72,73% within the 2nd computer game a thirty days later on (the complete result was statistically significant, p < 0,05). The apparent problem, though, is how the two sequences are not precisely comparablemoncler boots women
moncler boots men
moncler boots on sale
moncler jackets men sale
moncler jackets men cheap
|