Mailinglisten-Archive |
Hallo Armin,
Am Samstag, 3. November 2007 schrieb Armin Briatta:
> Ich habe es hinbekommen, eine Datei per Formular auf den Server zu
> laden, auf meiner eigenen Domain wird sie über move_uploaded_file()
> auch genau dahin verschoben, wohin sie soll.
>
> Das gleiche script verursacht bei einer anderen, anderswo gehosteten
> Domain einen seltsamen Effekt: Die Datei wird sowohl ins
> Zielverzeichnis verschoben als auch ins Wurzelverzeichnis der Domain.
>
> Habe ich da einen entscheidenden Fehler gemacht?
>
> Die wichtigen Passagen des Scripts:
>
>
>
> if(isset($_POST['submit']))
> {
> $VerbindungsID = ftp_connect($FTPServer);
> $LoginErgebnis = ftp_login($VerbindungsID, $FTPUser, $FTPPasswort);
>
> if($VerbindungsID && $LoginErgebnis)
> {
> $UploadErgebnis = ftp_put($VerbindungsID,
> $_FILES['benutzerdatei']['name'],
> $_FILES['benutzerdatei']['tmp_name'], FTP_BINARY);
>
> $datei_endgueltig = $_FILES['benutzerdatei']['name'];
>
> if (move_uploaded_file($_FILES['benutzerdatei']['tmp_name'],
> $datei_endgueltig))
> {
> echo "Die Datei wurde erfolgreich aufgeladen.";
>
> }
> else
> {
> echo "Die Datei konnte leider nicht aufgeladen werden.";
> }
> ftp_quit($VerbindungsID);
> }
> }
> else
> {
> ?>
> <form action="<?php echo $_SERVER['PHP_SELF']; ?>"
> enctype="multipart/form-data" method="post">
> <input name="benutzerdatei" type="file" />
> <input name="submit" type="submit" value="Aufladen" />
> </form>
> <?php
> }
>
> ?>
wofür brauchst Du die FTP-Verbindung, um die Datei hochzuladen? Was
bezweckst Du genau? Kannst Du bitte einmal genau beschreiben, was Du
machen möchtest?
Ansonsten: Du arbeitest einmal mit FTP und verschiebst dann die Datei
mit move_uploaded_file(). Ich vermute in Deinem Fall, daß es sich
hierbei um denselben Zielrechner handelt, womit der FTP-Teil
überflüssig wäre.
Auf der Basis der Annahme, daß der Zielrechner bei beiden Operationen
derselbe ist, ist es vermutlich so, daß Du bei den Operationen in
verschiedenen Verzeichnispfaden bist und mit relativen Pfadangaben
arbeitest. Daher erscheint die Datei an verschiedenen Stellen. Das ist
allerdings nur spekuliert.
Laß Dir doch einmal die Variableninhalte an den jeweiligen Stellen
ausgeben. Dann siehst Du sofort, woran es liegt.
Viele Grüße,
Lutz
php::bar PHP Wiki - Listenarchive