kostenloser Webspace werbefrei: lima-city


Upload zum FTP Server

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    skateen

    skateen hat kostenlosen Webspace.

    <?php
    $ftp_server = "ftp.lima-city.de";
    $connection_id = ftp_connect($ftp_server);
    $benutzername = "skateen";
    $passwort = "aw......";
    $login_result = ftp_login($connection_id, $benutzername, $passwort);
    $zieldatei = "/upload/test.htm";
    $lokale_datei = "/upload/test.htm";
    $upload = ftp_put ($connection_id, $zieldatei, $lokale_datei, FTP_ASCII);
    
    // Diese Variablen bitte ändern
    $ftp_server = "ftp.lima-city.de";
    $benutzername = "skateen";
    $passwort = "aw...i";
    
    // Die Verbindung herstellen
    $connection_id = ftp_connect($ftp_server);
    
    // Mit Benutzername und Kennwort anmelden
    $login_result = ftp_login($connection_id, $benutzername, $passwort);
    
    // überprüfen ob alles gutgegangen ist
    if ((!$connection_id) || (!$login_result)) {
    echo "<H1>Ftp-Verbindung nicht hergestellt!<H1>";
    echo "<P>Verbindung mit ftp_server als Benutzer $benutzername nicht möglich!</P>";
    die;
    } else {
    echo "<P>Verbunden mit ftp_server als Benutzer $benutzername</P>";
    }
    
    
    // Hochladen der datei
    $upload = ftp_put($connection_id, $zieldatei, $lokale_datei, FTP_ASCII);
    
    // Upload-Status überprüfen
    if (!$upload) {
    echo "<P>Ftp upload war fehlerhaft!</P>";
    } else {
    echo "<P>Datei $slokale_datei auf $host als $zieldatei geschrieben</P>";
    }
    
    // Schließen der Verbindung
    ftp_quit($connection_id);
    ?>


    Ich hab jetzt so ein Upload PHP Script jetzt hinbekommen.
    Leider geht das nicht kann mir jemand helfen.




    Beitrag zuletzt geändert: 17.9.2011 22:21:17 von skateen
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. WAS geht denn nicht? Fehlermeldung?

    Was ich nur so auf den ersten Blick gesehen habe ist:
    $ftp_server = "ftp.llima-city.de";


    mfg

  4. Autor dieses Themas

    skateen

    skateen hat kostenlosen Webspace.

    Ich musste das kurz umändern, vorher war das ja über bplaced.
  5. Bleibt trozdem noch die Frage nach dem WAS und nach eventuellen Fehlermeldungen.

    mfg
  6. Autor dieses Themas

    skateen

    skateen hat kostenlosen Webspace.

    Es kommt keine Fehler Meldung
    Die .htaccess Datei zeigt nichts an.
    Wenn ich etwas hochladen will steht da nur: Verbunden mit ftp_server als Benutzer skateen
    Unten allerdings: Ftp upload war fehlerhaft!

    Hat jemand ein Fertigen Upload PhP Code

    Beitrag zuletzt geändert: 18.9.2011 11:09:36 von skateen
  7. skateen schrieb:
    Es kommt keine Fehler Meldung


    nach nur ganz wenig änderungen funktioniert dein kode einwandfrei:
    <?php
    error_reporting(E_ALL | E_STRICT);
    // Diese Variablen bitte ändern
    $ftp_server   = 'ftp.lima-city.de';
    $benutzername = '<user>';
    $passwort     = '<password>';
    
    $zieldatei    = './test.html';
    $lokale_datei = './test.html';
    
    // Die Verbindung herstellen
    $connection_id = ftp_connect($ftp_server);
    
    // Mit Benutzername und Kennwort anmelden
    $login_result = ftp_login($connection_id, $benutzername, $passwort);
    
    // überprüfen ob alles gutgegangen ist
    if ((!$connection_id) || (!$login_result)) {
    echo "<H1>Ftp-Verbindung nicht hergestellt!<H1>";
    echo "<P>Verbindung mit ftp_server als Benutzer $benutzername nicht möglich!</P>";
    die;
    } else {
    echo "<P>Verbunden mit ftp_server als Benutzer $benutzername</P>";
    }
    
    
    // Hochladen der datei
    $upload = ftp_put($connection_id, $zieldatei, $lokale_datei, FTP_ASCII);
    
    // Upload-Status überprüfen
    if (!$upload) {
    echo "<P>Ftp upload war fehlerhaft!</P>";
    } else {
    echo "<P>Datei $slokale_datei auf $host als $zieldatei geschrieben</P>";
    }
    
    // Schließen der Verbindung
    ftp_quit($connection_id);


    Hat jemand ein Fertigen Upload PhP Code
    also ich habe zwar keinen, aber kann dir einen hinweis geben, wie man's angeht (um die sicherheit solltest allerdings selber sorgen [und zwar unbedingt!]):
    file 1. /<path>/<to>/CLimaFtpData.php (besonders schützen! bei mir steht so etwas gar nicht erst am selben server!)
    <?php
    
    class CLimaFtpData {
      // connect data
      public $host   = 'ftp.lima-city.de';
      public $port   = 21;
      public $tmout  = 5; // default timeout = 90 sec.
    
      // login data
      public $user   = '<user>';
      public $passwd = '<password>';
    }

    file 2. /<path>/<to>/CLimaFtp.php
    <?php
    
    class CLimaFtp extends CLimaFtpData {
      private $conn  = null;
      private $login = null;
      private $sys   = null;
      private $feat  = null; // server features
      private $stat  = null;
      private $help  = null;
      // other private variables
    
      public  $pwd   = null; // current working directory
      public  $file  = null;
      public  $rec   = null; // recursive dir
      public  $rawl  = null;
      public  $raw   = null;
      // other public variables
    
    
      public function __construct() {
        $this->conn = ($c = ftp_connect($this->host, $this->port, $this->tmout)) ?
          $c:
          $this->error('unknown host, erroneous port number or timeout');
    
        $this->login = ($l = ftp_login($this->conn, $this->user, $this->passwd)) ?
          $l:
          $this->error('incorrect login data');
    
        $this->sys  = ftp_systype($this->conn);
        $this->pwd  = ftp_raw($this->conn, 'PWD');
        $this->feat = ftp_raw($this->conn, 'FEAT');
        $this->stat = ftp_raw($this->conn, 'STAT');
        $this->help = ftp_raw($this->conn, 'HELP');
      }
    
    
      /**
       * LIST OF IMPLEMENTED PHP-FTP FUNCTIONS (# = IMPLEMENTED)
       *    ftp_alloc
       *    ftp_cdup
       *    ftp_chdir
       *    ftp_chmod
       *    ftp_close
       *    ftp_connect
       *    ftp_delete
       *    ftp_exec
       *    ftp_fget
       *    ftp_fput
       *    ftp_get_option
       *    ftp_get
       *    ftp_login
       *    ftp_mdtm
       *    ftp_mkdir
       *    ftp_nb_continue
       *    ftp_nb_fget
       *    ftp_nb_fput
       *    ftp_nb_get
       *    ftp_nb_put
       *    ftp_nlist
       *    ftp_pasv
       *    ftp_put
       *    ftp_pwd
       *    ftp_quit
       *  # ftp_raw
       *  # ftp_rawlist
       *    ftp_rename
       *    ftp_rmdir
       *    ftp_set_option
       *    ftp_site
       *    ftp_size
       *    ftp_ssl_connect
       *    ftp_systype
       */
      public function raw($cmd) {
        $this->raw  = ftp_raw($this->conn, $cmd);
      }
    
      public function rawlist($dir = '/', $rec = false) {
        if(empty($dir)) {
          $dir = $this->dir;
        }
        $this->rawl = ($l = ftp_rawlist($this->conn, $dir, $rec)) ?
          $l:
          $this->error('rawlist error');
      }
    
    
      /**
       *  helper functions
       */
      public function error($msg) {
        exit($msg);
      }
    
      // for testing only
      public function __toString() {
        return '<pre>' . print_r($this, true) . '</pre>';
      }
    
      public function __destruct() {
        if($this->conn) {
    #echo '<h1>__destruct()</h1>';
          ftp_quit($this->conn);
        }
      }
    }
    das ist allerding alles nur nicht fertig (man sollte z.b. public function error($msg) so gestalten, dass das ganze nicht abbricht)! wie du sehen kannst allein ftp_raw und ftp_rawlist sind implementiert. wenn's dir spaß macht kannst beenden ;o)

    ein test könnte eventuell so aussehen:
    <?php
    
    // includes with absolutr paths
    require_once '/<path>/<to>/CLimaFtpData.php';
    require_once '/<path>/<to>/CLimaFtp.php';
    // ...
    
    $ftp = new CLimaFtp();
    
    // show directory listing
    $ftp->rawlist('/');
    
    // show object data
    exit(''.$ftp);
    und das tut auch nichts anders als eine auflistung von '/' (wobei nicht einmal eine ausgabe programmiert ist[daher '__toString()' in der class]).

    mit dem testen auf lima musst du leider bis übermorgen warten :(

    Beitrag zuletzt geändert: 19.9.2011 14:46:11 von hemiolos
  8. Autor dieses Themas

    skateen

    skateen hat kostenlosen Webspace.

    Danke So wie ich das verstanden habe muss ich mit diesen Script daraus 2 Daten machen, oder?
    Ich weiß nicht wie ich das verbinden soll.
  9. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!