Huhu,
Ich habe ein Upload Script welches es erlauben soll Bilddateien hochzuladen.
Wenn ich die Datei, editavatar.php, direkt über den Browser aufrufe,also so:
Und die Fehlermeldung einmal in Live:
Klick
funktioniert alles wunderbar. Rufe ich es allerdings so auf:
Klick2
kommt folgende Fehlermeldung:
Warning: move_uploaded_file(uploads/2bad.jpg) [function.move-uploaded-file]: failed to open stream:
No such file or directory in /opt/lampp/htdocs/bad/avatar/editavatar.php on line 43
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phphAPoyY'
to 'uploads/2bad.jpg' in /opt/lampp/htdocs/bad/avatar/editavatar.php on line 43
Woran kann das liegen? Durch das includen von dem file in die index.php? Das Script geht ja nur warum nich wenn es includiert wird?
Ich hänge mal das Script an:
Falls noch der Code der index.php benötigt wird kann ich diesen auch noch posten.
Danke für die Hilfe schonmal im Vorraus
Ich habe ein Upload Script welches es erlauben soll Bilddateien hochzuladen.
Wenn ich die Datei, editavatar.php, direkt über den Browser aufrufe,also so:
Und die Fehlermeldung einmal in Live:
Klick
funktioniert alles wunderbar. Rufe ich es allerdings so auf:
Klick2
kommt folgende Fehlermeldung:
Warning: move_uploaded_file(uploads/2bad.jpg) [function.move-uploaded-file]: failed to open stream:
No such file or directory in /opt/lampp/htdocs/bad/avatar/editavatar.php on line 43
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phphAPoyY'
to 'uploads/2bad.jpg' in /opt/lampp/htdocs/bad/avatar/editavatar.php on line 43
Woran kann das liegen? Durch das includen von dem file in die index.php? Das Script geht ja nur warum nich wenn es includiert wird?
Ich hänge mal das Script an:
PHP-Code:
<?php
/* Maximale Dateigröße wird festgelegt */
define('MAX_FILE_SIZE', 10240);
if(array_key_exists('upload', $_POST)){
/* Der Pfad wird festgelegt */
define('UPL_FLD','uploads/');
$flext = pathinfo($_FILES['datei']['name']);
$ext = strtolower($flext['extension']);
$file = str_replace('','_',$_POST['uploadbildname'].'.'.$ext);
$file = strtolower($file);
$maxfs = number_format(MAX_FILE_SIZE/1024, 1).'KB';
$fsize = false;
if ($_FILES['datei']['size'] > 0 && $_FILES['datei']['size'] <= MAX_FILE_SIZE){
$fsize = true;
}
$filetype = array('image/gif', 'image/jpeg', 'image/pjpeg', 'image/png');
$ftype = false;
foreach($filetype as $type){
if($type == $_FILES['datei']['type']){
$ftype = true;
break;
}
}
if ($ftype && $fsize && $_POST['uploadbildname'] != ''){
switch($_FILES['datei']['error']){
case 0:
$upload = move_uploaded_file($_FILES['datei']['tmp_name'], UPL_FLD.$file);
if($upload){
$msg = 'Avatar erfolgreich hochgeladen!';
} else {
$msg = 'Fehler.<br> Bitte erneut versuchen!';
}
break;
case 3:
$msg = 'Fehler. Bitte erneut versuchen!';
break;
default:
$msg = 'Fehler - Bitte wenden Sie sich an den Adminstrator!';
}
}elseif ($_FILES['datei']['error'] == 4) {
$msg = 'Bitte Datei auswählen!';
} elseif ($_POST['uploadbildname'] == "") {
$msg = 'Bitte Bildname eingeben!';
} else {
$msg = $_FILES['datei']['name'].' kann nicht hochgeladen werden.';
if(!$ftype){
$msg .= ' Erlaubte File Typen sind: .gif, .jpg, .png <br>';
}
if(!$ftype){
$msg .= 'Die Maximal erlaubte Dateigrösse ist '.$maxfs;
}
}
}
?>
<?php if(isset($msg)){ echo $msg;} ?>
<form action="<?php $PHP_SELF ?>" method="post" enctype="multipart/form-data">
<table width="400" border="0">
<tr>
<td width="98">Bildname:</td>
<td width="31"> </td>
<td width="249"><input type="text" size="25" maxlength="150" name="uploadbildname"
value="" /></td>
</tr>
<tr>
<td>Bilddatei:</td>
<td> </td>
<td><input type="hidden" name="MAX_FILE_SIZE" value="<?php echo MAX_FILE_SIZE; ?>" />
<input type="file" name="datei" value="" /></td>
</tr>
</table>
<br />
<center><input type="submit" name="upload" value="Hochladen" /></center>
</form>
Falls noch der Code der index.php benötigt wird kann ich diesen auch noch posten.
Danke für die Hilfe schonmal im Vorraus
Kommentar