[PHP] Upload-Script



  • Ich will meinen Freunden ermöglichen mir auf einen Server etwas upzuloaden. Dazu habe ich von programmer85 (oder so ähnlich) ein Script bekommen, welches mir Dateien auf den eigenen Server hochlädt:

    <?php
    if(isset($upload))
    {
    
        copy("$datei" , "http://mitglied.lycos.de/jetfighters/uploads/$datei_name");
    
    }
    else
    {
    echo "Fehler: Datei konnte nicht gesendet werden!";
    }
    ?>
    

    Und die dazugehörige HTML-Datei, die das Formular beinhaltet:

    <HTML>
    <HEAD>
    <TITLE>SideWinders Home</TITLE>
    <META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </HEAD>
    
    <BODY bgcolor="#0F0E13" text="#CCCCCC" link="#993300" vlink="#993300" alink="#993300">
    
    <form ENCTYPE="multipart/form-data" method="post" action="./upload.php"> <BR>
      <B>File der hochgeladen werden soll:</B> 
      <input type="file" name="datei" size="50">
       <BR>
      <input type="submit" name="upload" value="Upload">
    </form>
    
    </BODY>
    </HTML>
    

    Nur will ich jetzt auf einen anderen Server hochladen -> den oben genutzten Tripod-Server, damit keiner "schmutzige" Dateien auf den von mir genutzten Server lädt.

    So wie oben kann es ja nicht funktionieren -> kann mir kaum vorstellen, dass man auf einen X-beliebigen Server einfach so raufladen darf.

    Wie geht das also? Geht das überhaupt?

    MfG SideWinder



  • Du musst eine FTP-Verbindung zu deinem Tripod-Server aufbauen! Anders geht das, wie du ganz richtig vermutet hast wohl nicht!



  • Und wie lässt sich das anstellen? Hab von PHP genau genommen 0 Ahnung - also soll ich es erst gar nicht versuchen?

    MfG SideWinder


  • Mod

    PHP ist ziemlich einfach... Das sollte dir keine groeberen Probleme bereiten.

    Lies erstmal nen crash kurs (wirst schon irgendwo einen finden ;)) und dann mach dich ueber
    www.php.net/docs her

    speziell hier

    Dann solltest du das ein 2 Tagen erledigt haben...

    Bei Fragen gibts ja das Forum 🙂



  • Okay, werd mich da mal informieren :).

    MfG SideWinder



  • Könnte ich ja im Prinzip so verwenden wie als Beispiel angegeben oder?

    <?php
    // set up basic connection
    $conn_id = ftp_connect($ftp_server);
    
    // login with username and password
    $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
    
    // check connection
    if ((!$conn_id) || (!$login_result)) {
            echo "FTP connection has failed!";
            echo "Attempted to connect to $ftp_server for user $ftp_user_name";
            exit;
        } else {
            echo "Connected to $ftp_server, for user $ftp_user_name";
        }
    
    // upload the file
    $upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);
    
    // check upload status
    if (!$upload) {
            echo "FTP upload has failed!";
        } else {
            echo "Uploaded $source_file to $ftp_server as $destination_file";
        }
    
    // close the FTP stream
    ftp_close($conn_id);
    ?>
    

    Muss eigentlich nur noch die Strings anpassen?

    MfG SideWinder



  • Jo, genau! Das müsste eigentlich schon genau das sein, was du brauchst! 🙂


Anmelden zum Antworten