aan alle goede dingen komt een eind, webmasterplein.net 2003 - 2013
wij danken jullie voor al mooie momenten die dankzij dit forum ontstonden - Derk, Rutger en Stef

[php] ftp class

Deel alles wat je delen kan, gebruik het voor opslag, plaats het omdat je er trots op bent of creƫer samen wat moois!

[php] ftp class

Berichtdoor Stef » 31 jul 2008 19:43

Code: Selecteer alles
/* webmasterplein.net */
class ftp {

   private $connection;

   // contact maken met ftp server
   public function connect($server, $user, $pass) {
      $this->connection = ftp_connect ($server);
       $result = ftp_login ($this->connection, $user, $pass);

       if ((!$this->connection) || (!$result)) {
         //echo '<br />Not connected';
         return false;
       } else {
         //echo "<br />Connected to $server, for user $user.";
         return true;
       }
   }

   // contact verbreken met ftp server
   public function disconnect() {
       ftp_close($this->connection);
       //echo '<br />Connection closed';
   }

   /* functies */

   public function command($command) {
       $result = ftp_site($this->connection, $command);
       if ((!$this->connection) || (!$result)) {
         //echo '<br />Command niet uitgevoerd';
         return false;
       } else {
         //echo "<br />Command uitgevoerd";
         return true;
       }
   }

   // map aanmaken
   public function mk_dir($path, $dir) {
      ftp_chdir ($this->connection, $path); // map opzoeken
      $result = ftp_mkdir($this->connection, $dir); // map aanmaken

       if ((!$this->connection) || (!$result)) {
         //echo '<br />Map niet aangemaakt';
         return false;
       } else {
         //echo "<br />Map aangemaakt";
         return true;
       }
   }

   // map verwijderen
   public function rm_dir($path, $dir, $clear) {
      // clear dir
      $result_clear = true;
      if ( $clear ) {
         $contents = ftp_nlist($this->connection, $path . '/' . $dir);

         foreach ($contents as $k => $filename) {
            if ( !@ftp_delete($this->connection, $filename) ) {
               if ( !ftp_rmdir($this->connection, $filename) ) {
                  $result_clear = false;
               }
            }
         }
      }

      ftp_chdir ($this->connection, $path); // map opzoeken
      $result = ftp_rmdir($this->connection, $dir); // map verwijderen

       if ((!$this->connection) || (!$result) || (!$result_clear)) {
         //echo '<br />Map niet verwijderd';
         return false;
       } else {
         //echo "<br />Map verwijderd";
         return true;
       }
    }

   // bestand verwijderen
   public function delete_file($filename) {
      $result = ftp_delete($this->connection, $filename);

          if ((!$this->connection) || (!$result)) {
         //echo '<br />Bestand niet verplaatst';
         return false;
          } else {
         //echo "<br />Bestand verplaatst";
         return true;
          }
      }

   // bestand verzetten
   public function put_file($remote_file, $local_file) {
      $result = ftp_put($this->connection, $remote_file, $local_file, FTP_BINARY); // local=temp moet naar remote

          if ((!$this->connection) || (!$result)) {
         //echo '<br />Bestand niet verplaatst';
         return false;
          } else {
         //echo "<br />Bestand verplaatst";
         return true;
          }
   }
}
Avatar gebruiker
Stef
wmpr
 
Berichten: 5575
Geregistreerd: 27 nov 2003 21:51

Keer terug naar Snippets



cron