stephandziurla
Erfahrenes Mitglied
Hallo! Ich habe eine Frage bzgl. des Hochladens von Dateien. Ich möchte bei einem selbstgebauten CMS die Möglichkeit haben, Dateien hochzuladen. Hierzu habe ich ein Formular erstellt, mit dem man Dateien auswählen kann, die dann zum Upload bereitgestellt werden. Das sieht so aus:
Wieso das jetzt in ner Tabelle ist und wieso da zusätzlich noch JS drin ist, ist erst einmal nebensächlich, denke ich - es soll so sein!
Dann übergeb ich also das Ganze an die Datei "upload.php". Diese soll den Upload vollziehen. Programmiert hab ich das:
Die in der form.php übergebene Datei soll in das Verzeichnis "/datei" von meiner lokalen Festplatte hochgeladen werden. Es funktioniert aber nicht - wieso
HTML:
<html>
<head>
<title>Formular</title>
<script type="text/javascript">
function go1()
{
document.a.b.click(); <!--"a" ist der form-tag Identifizierer "id" - muss für alle Funtkionen gleich sein, da nur ein Formular existiert-->
document.a.c.value = document.a.b.value; <!--"a" dient für den Durchsuchen-Button selbst - dessen Information wird an das Textfeld namens "c" übergeben zur Ansicht des Pfades-->
}
</script>
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" height="100%" width="100%">
<tr>
<td valign="middle" align="center">
<form method="post" action="upload.php" id="a" name="a" enctype="multipart/form-data";>
<input type="file" id="b" style="display:none"> <!--FUNKTION DIE DEN EXPLORER AUFRUFT-->
<input id="c" name="datei"> <!--TEXTFELD INDEM DER PFAD ANGEZEIGT WIRD-->
<input type="button" onclick="go1();" value="DATEI"> <!--BUTTON-->
<input type="submit" value="UPLOAD">
</form>
</td>
</tr>
</table>
</body>
</html>
Dann übergeb ich also das Ganze an die Datei "upload.php". Diese soll den Upload vollziehen. Programmiert hab ich das:
PHP:
<?php
$suchedatei = strrpos($_POST["datei"],"\\");
$suchedatei += '1';
$uploadgrafik = substr($_POST["datei"],$suchedatei);
// Einloggen mit Benutzername und Kennwort
$conn_id = ftp_connect("ftp.domain.de");
$login_result = ftp_login($conn_id, "user", "pwd");
ftp_pasv($conn_id, TRUE);
//int ftp_put ( int ftp_stream, string remote_file, string local_file, int mode)
ftp_chdir($conn_id, "/datei");
ftp_put($conn_id, "$uploadgrafik", $_POST["datei"], FTP_BINARY);
ftp_quit($conn_id);
echo "der string im textfeld: ".$_POST["datei"];
echo "<br>suchposition wo letztes\: ".($suchedatei-1);
echo "<br>suchposition wo dateiname beginnt: ".$suchedatei;
echo "<br>uploadgrafik: ".$uploadgrafik;
?>