• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Upload

Status
Für weitere Antworten geschlossen.

andlinga

Neues Mitglied
Der folgende Code bildet mein Upload Formular:

HTML:
<form enctype="multipart/form-data" action="./options_pic.php" method="post">
<input type="hidden" name="max_file_size" value="1000000">
<input name="thefile" type="file">
<input type="submit" name="submit" value="Bild ändern" size="12">
</form>

Dieser Code holt sich die Datei und platziert sie im richtigen Verzeichnis

PHP:
<?php
if($thefile != ""){
	if($thefile_size < 1000000){
		unlink("./".$_SESSION['username']."/upic.jpg");
		if(!copy ($thefile, "./".$_SESSION['username']."/upic.jpg")){echo "Es ist ein Fehler beim Übertragen der Datei passiert!";} 
					else {echo "Das Bild wurde erfolgreich auf den Server übertragen!";} 
					
			} else {echo "Das Bild ist größer als 1 MB!";} 
			
		}elseif($thefile == "none"){
			die("Kein Bild übertragen");
		}
		?>

Mein Problem ist das die Variable $thefile leer ist und möchte wissen was ich falsch mache

mfg andlinga
 
Dein Server hat bestimmt nicht "register_globals" aktiviert, und daher ist $thefile nicht gesetzt.

PHP:
$thefile = $_FILES['thefile'];
echo '<pre>';print_r($thefile);echo '</pre>';
if(isset($thefile)) {
...
}
 
$_FILES ist für type="file" genauso wie $_POST für einen Text ist ;-)
$_FILES enthält allerdings ein paar mehr infos und zwar:

$_FILES['thefile']['name']
$_FILES['thefile']['type']
$_FILES['thefile']['size']
$_FILES['thefile']['tmp_name']
$_FILES['thefile']['error']
 
das funktioniert jetzt aber jetzt wird folgender Fehler geworfen

Warning: copy(Array) [function.copy]: failed to open stream: No such file or directory in C:\Apache\WWW\docs\u\options_pic.php on line 76
 
$thefile ist ja auch jetzt ein array ;) so muss es dann heißen
PHP:
.....
 if(!copy ($thefile['tmp_name'], "./".$_SESSION['username']."/upic.jpg")){echo "Es ist ein Fehler beim Übertragen der Datei passiert!";}
                    else {echo "Das Bild wurde erfolgreich auf den Server übertragen!";}
....

(bei filesize ists auch ein array also musste das ['size'] dranhängen)
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben