Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Trucos (https://www.clubdelphi.com/foros/forumdisplay.php?f=52)
-   -   Función ftp_upload_file (https://www.clubdelphi.com/foros/showthread.php?t=80873)

Julián 28-11-2008 13:14:20

Función ftp_upload_file
 
Función que envia un archivo a un servidor ftp. los nombres de los parametros son suficientemente explicativos. Algunos parametros pueden ser omitidos (ver el código fuente)

Ejemplo de uso:
Código:


if (ftp_upload_file('ftp.microsoft.com','bill','12345','./pepino.jpg','ballmer.jpg','/home/bill'))
echo 'pepino enviado';

La función:
Código:

function ftp_upload_file($ftp_server,$ftp_user_name,$ftp_user_pass,$source_file,$destination_file,$remote_dir) {
  $msgdebug=false;
  $result=false;
  if (!$source_file)
  {
    echo "No se ha especificado un nombre de archivo<br>";
    Return $result;
  }
  if (!$destination_file) $destination_file=$source_file;
  if (!$ftp_server)      $ftp_server='localhost';
  if (!$ftp_user_name)    $ftp_user_name='anonymous';
  if (!$ftp_user_pass)    $ftp_user_pass='yo@mail.com';

  echo "Intentando conectar con <I>$ftp_server</I>.<br>";
  $conn_id = ftp_connect($ftp_server);
  if (!$conn_id)
  {
    if ($msgdebug) echo "No se pudo conectar con <I>$ftp_server</I><br>";
              else echo "No se pudo conectar con el servidor ftp<br>";
  }
  else
  {
    echo "Conectado.<br>";
    if ($msgdebug) echo "Enviando nombre de usuario <I>$ftp_user_name</I> y contraseña.<br>";
    $login_result = @ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
    if ((!$conn_id) || (!$login_result))
    {
      if ($msgdebug) echo "No se pudo conectar como <I>$ftp_user_name</I><br>";
                else echo "Acceso denegado al servidor ftp<br>";
    }
    else
    {
      if ($msgdebug) echo "Usuario <I>$ftp_user_name</I> <font color='#00F03D'><b>OK</b></font><br>";
                else echo "Usuario FTP </I> <font color='#00F03D'><b>OK</b></font><br>";
      if ($remote_dir)
      {
        if ($msgdebug) echo "Cambiando al directorio <I>$remote_dir</I>..";
                  else echo "Cambiando al directorio remoto..";
        if (!@ftp_chdir($conn_id,$remote_dir))
        {
          $bad_dir=true;
          echo "..<font color='red'><b>!</b>Aceso denegado!</b></font><br>";
        }
        else
          echo "..<font color='#00F03D'><b>OK</b></font><br>";
      }
      if (!$bad_dir)
      {
        echo "Enviando archivo <I>$source_file</I>.. ";
        $upload = @ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);
        if (!$upload) 
          echo "..<font color='red'><b>!</b>Error subiendo archivo<b>!</b></font><br>";
        else
          $result=true; echo "..guardado como $destination_file<font color='#00F03D'><b>OK</b></font><br>";
      }
      if (function_exists("ftp_close")) ftp_close($conn_id); else ftp_quit($conn_id);
    }
    Return $result;
  }
}


raich 28-11-2008 14:18:43

excelente y funciona a la perfeccion, el problema que tengo por el momento es que mi teclado esta en hebreo los colores los puedo escribir rgb(00,240,61) o definirlos en una variable TColor.

Gracias por el Aporte
Jose Luis


La franja horaria es GMT +2. Ahora son las 20:13:08.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi