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

Problem mit Upload

MadMax777

Neues Mitglied
Hallo Leute,

ich wollte das man über die Seite eine Datei uploaden kann. Hab das mit der Copy-Funktion versucht, bin aber bislang daran gescheiter. :(

Hier der entsprechende Code meines Versuches:

PHP:
<?php
if (isset($_POST['hochladen'])) {
	echo $_POST['Datei']."<br>";
	$dateimitpfad = $_POST['Datei'];
	echo $dateimitpfad."<br>";
	$datei = basename($dateimitpfad);
	echo $datei."<br>";

	if ( @copy ( $dateimitpfad, 'https://www.mdnetwork.de/aqid/Dienstplan/'.$datei ) )
	{
  		echo 'Datei '.$datei.' wurde hochgeladen.<br>';  
	} else {
	echo 'Das Hochladen der Datei '.$datei.' ist fehlgeschlagen.<br>';
	}
}
?>

<form name="hochladen" action="index.php?seite=<?php echo $seite; ?>&seite2=<?php echo $Dienstplan2; ?>&lan=<?php echo $lan; ?>" method="post" enctype="multipart/form-data">
  <p><?php echo $Text; ?><br>
    <input name="Datei" type="file" size="50">
    <?php echo"<input type='submit' name='hochladen' value=".$Button.">"; ?>
    <br>
    <?php echo $Text2; ?> </p>
</form>

If-Bedingung ist nicht erfüllt also, false.
Und die Variablen $dateimitpfad und $datei scheinen leer zusein genauso wie $_POST['Datei']
 
Liegt vermutlich daran, dass die Datei nach dem Upload im temp-Verzeichnis von PHP steht, und Du das nicht angegeben hast?

Ich würde move_uploaded_file() benutzen. Siehe hier: PHP: move_uploaded_file - Manual

Da stehen auch Beispiele.
 
Funktioniert immer noch nicht :(

So hab jetzt das mal mit move_uploaded_file probiert. Nur leider Funktioniert der Upload immer noch nicht :(

PHP:
<?php

if ( ! empty ( $_FILES['Datei']['name'] ) )
{

    echo 'Dateiname: ' . $_FILES['Datei']['name'] . '<br>';

    echo 'Dateigröße: ' . $_FILES['Datei']['size'] . ' Byte<br>';
	echo 'Tmp-File: '.$_FILES['Datei']['tmp_name'].'<br>';

	if ( move_uploaded_file ( $_FILES['Datei']['tmp_name'],'../Dienstplan/' . $_FILES['Datei']['name'] ) )
	{
    	echo '<b>Upload beendet!</b><br>';

    	echo 'Dateiname: ' . $_FILES['Datei']['name'] . '<br>';
   
    	echo 'Dateigröße: ' . $_FILES['Datei']['size'] . ' Byte<br>';
  	} else
  	{
		echo 'Das Hochladen der Datei '.$_FILES['Datei']['name'].' ist fehlgeschlagen.<br>';
		echo $_FILES['Datei']['error'];
  	} 
}
 
Kann es vielleicht sein, dass es damit zusammenhängt, ob sich im HTTP-Bereich oder HTTPS-Bereich befindet, das es nicht bislang bei mir nicht funktioniert. Weil der Upload auf einer Kennwort geschützten Seite passiert. Also eine https : // www . irgendwas . de-Seite ist.

Ich häng auch nochmal den Code für das Formular mit dran:

PHP:
<form name="hochladen" action="index.php?seite=<?php echo $seite; ?>&seite2=<?php echo $Dienstplan2; ?>&lan=<?php echo $lan; ?>" method="post" enctype="multipart/form-data">
  <p><?php echo $Text; ?><br>
    <input name="Datei" type="file" size="50">
    <?php echo"<input type='submit' name='hochladen' value=".$Button.">"; ?>
    <br>
    <?php echo $Text2; ?> </p>
</form>
 
Zuletzt bearbeitet:

Neueste Beiträge

Zurück
Oben