hi ,
ich suche nun schon seit ein paar stunden nach dem fehler, deswegen poste ich nun hier, vielleicht könnt ihr mir ja helfen?
Also es geht um ein Formular, wo ich Daten eintragen kann und ein Bild hochladen kann, ab Zeile 38 prüfe ich die Bilddaten, ob sie übereinstimmen! Das Problem ist hier nun, wenn ich z.B. ein Bild mit Dateiendung .jpg auswähle, wird es trotzdem hochgeladen, obwohl nur gif dateien erlaubt sind! Er gibt den echo befehl zur der passende if abfrage auch aus, aber lädt das bild trotzdem hoch....! Was hab ich da falsch gemacht?
wenn jemand einen fehler sieht, wäre das wirklich klasse! falls jemand durch den code nicht durchsteigt, fragt kurz nach! thx schon mal
ich suche nun schon seit ein paar stunden nach dem fehler, deswegen poste ich nun hier, vielleicht könnt ihr mir ja helfen?
Also es geht um ein Formular, wo ich Daten eintragen kann und ein Bild hochladen kann, ab Zeile 38 prüfe ich die Bilddaten, ob sie übereinstimmen! Das Problem ist hier nun, wenn ich z.B. ein Bild mit Dateiendung .jpg auswähle, wird es trotzdem hochgeladen, obwohl nur gif dateien erlaubt sind! Er gibt den echo befehl zur der passende if abfrage auch aus, aber lädt das bild trotzdem hoch....! Was hab ich da falsch gemacht?
wenn jemand einen fehler sieht, wäre das wirklich klasse! falls jemand durch den code nicht durchsteigt, fragt kurz nach! thx schon mal
PHP-Code:
<?
// Nur die Daten bearbeiten, weil keine neue Datei hochgeladen wurde, alte hochgeladene Datei beibehalten:
if($file_name == "")
{
$result = MYSQL_QUERY(" UPDATE $table SET
realname='$realname',
pass='$pass'
WHERE ID='$ID' ");
if($result){
echo "Die Daten wurden erfolgreich geändert!";
}
else {
echo "Die Daten konnten nicht geändert werden, versuchen Sie es erneut!";
}
$result = MYSQL_QUERY(" SELECT * FROM $table WHERE ID='$ID' ");
WHILE($row = mysql_fetch_array($result)){
}
}
// Die neue Datei hochladen und Daten bearbeiten:
else
{
$ziel = "pictures/";
$datei_max = "800000";
$datei_endung = "image/gif";
$datei_format = "200";
$picture = "pictures/$file_name";
/* Bilddaten überprüfen:
HIER TRITT EIN FEHLER AUF:
Die if abfragen werden irgendwie ignoriert, er gibt zwar den echo Befehl aus, falls etwas nicht stimmt, aber lädt das Bild trotzdem hoch!
*/
if($datei_max < $_FILES['file']['size'])
{
echo "Das ausgewählte Bild ist zu groß!";
}
elseif($datei_endung != $_FILES['file']['type'])
{
echo "Die ausgewählte Datei entspricht nicht den erlaubten Dateitypen!";
}
else
{
move_uploaded_file($_FILES['file']['tmp_name'],$ziel.$file_name);
}
// Daten bearbeiten:
$result = MYSQL_QUERY(" UPDATE $table SET
realname='$realname',
picture='$picture',
pass='$pass'
WHERE ID='$ID' ");
if($result)
{
echo "Die Daten wurden erfolgreich geändert!";
}
else
{
echo "Die Daten konnten nicht geändert werden, versuchen Sie es erneut!";
}
$result = MYSQL_QUERY(" SELECT * FROM $table WHERE ID='$ID' ");
WHILE($row = mysql_fetch_array($result)){
}
}
?>
Kommentar