Reply to Thread
Results 1 to 2 of 2
    #1
  1. Hamawt'a Dyaboo is on a distinguished road Dyaboo's Avatar
    Join Date
    Dec 2008
    Location
    Lima
    Posts
    27
    Blogs
    22
    Chats: 2
    Blobbie Verde

    Post Servicios de Internet con PHP




    Hola chicos, bueno aqui ps colocando algo que a mi parecer es muy interesante para poder entender como es acceder a servicios de Internet desde las aplicaciones Web.

    La necesidad de compartir información (documentos, programas, archivos y otros) a través de Internet llevó a la invención y utilización de un servicio conocido como FTP. Este servicio permite publicar información de forma libre o con ciertas restricciones, esto dependerá de que tipo de infomación vayamos a publicar; si se trata de información super secreta, entonces tendremos que pedirles la contraseña a nuestros usuarios antes de que ingresen.

    El servicio de FTP garantiza la confiabilidad de la transferencia de la información. Por un lado tendremos al Servidor, donde se alojan los archivos a compartir, y por el otro lado tendremos a un Cliente que usa un programa del tipo "Cliente FTP" que le permite negociar la transferencia con el Servidor.

    Conexión al Servidor FTP

    Para la plataforma Windows, las funciones del FTP vienen incorporadas, cosa que no sucede en la distribución para Linux, en la cual hay que compilar el PHP. Todo este soporte para el servicio de FTP gira alrededor de algunas funciones que son las siguientes:

    ftp_connect() : Establece una conexión FTP
    ftp_close(): Cierra una conexión FTP
    ftp_login(): Realiza la autentificación en la conexion FTP abierta.
    ftp_ssl_connect(): Abre una conexión segura SSL-FTP

    La función ftp_connect() recibe cómo único parámetro la dirección IP o el nombre del servidor FTP, por ejemplo: ftp.empresa.com. Si la conexión pudo complementarse, esta función devuelve un identificador de conexión ($conn_id), caso contrario retorna FALSE. Este identificador es pasado a la función ftp_close($conn_id) cuando se quiere cerrar la conexión.

    La función ftp_login() recibe 3 parámetros, primero el identificador de conexión ($conn_id), luego del nombre de usuario del servidor FTP y finalmente la contraseña. Esta función devuelve TRUE si el login fue exitoso, caso contrario retorna FALSE.

    Code:
    ftp_login($conn_id, $ftp_usuario, $ftp_contrasenia)
    Ahora les dejo un ejemplo de conexión al servidor FTP:

    Code:
    <?php
    
    $ftp_servidor  = "ftp.empresa.com";
    $ftp_usuario   = "koky";
    $ftp_contrasenia = "secreto";
    
    // Establece una conexión FTP
    
    $conn_id = ftp_connect($ftp_servidor);
    
    // Logearse: Usuario y Contraseña
    
    $login_result = ftp_login($conn_id, $ftp_usuario, $ftp_contrasenia);
    
    // Verificar conexión
    
    if((!$conn_id) || (!$login_result)){
    
       echo "Error al conectarse al servidor $ftp_servidor con el usuario $ftp_usuario"; 
       exit;
    
    } else {
    
       echo "Conectado al Servidor $ftp_servidor, con el usuario $ftp_usuario";
    
    }
    
    // Cierra una conexion FTP
    
    ftp_close($conn_id);
    
    
    ?>
    Bueno por hoy eso es todo, pero luego colocare más funciones tales como para transferir archivos, descargar archivos del servidor FTP, etc.

    Se despide su humilde servidor D'yaboo ... ahora con más tiempo para todo...

#2
  • Hamawt'a Dyaboo is on a distinguished road Dyaboo's Avatar
    Join Date
    Dec 2008
    Location
    Lima
    Posts
    27
    Blogs
    22
    Chats: 2
    Blobbie Verde

    Default Servicios de Internet con PHP (2)

    Hola Chicos, weno aqui posteando algo que deje prometido en mi anterior post...

    Transferencia de Archivos:

    Funciones de Transferencia de Archivos

    ftp_put : Sube un archivo al servidor FTP

    ftp_get : Descarga un archivo del servidor FTP

    ftp_fput : Sube un archivo abierto al servidor FTP

    ftp_fget : Descarga un archivo del servidor FTP y lo guarda en un archivo abierto.

    ftp_delete : Borra un archivo del servidor ftp

    Estas funciones se ejecutan sobre una conexión FTP abierta. Es por eso que se utilizara el script que se utilizo en el anterior post para abrir conexiones y simplemente agregaremos un par de lineas para subir o descargar archivos.

    La función ftp_put() recibe 4 parametros:

    Code:
    ftp_put($conn_id, $archivo_remoto, $archivo_local, $modo_transferencia);
    El $conn_id se trata del identificador que retorna la función ftp_connect().

    El $archivo_remoto se refiere a la ubicación y nombre que tendrá el archivo cuando se suba al servidor FTP.

    El $archivo_local indica el archivo que vamos a subir.

    Y el $modo_transferencia indica el modo de transferencia que debe ser: FTP_ASCII o FTP_BINARY

    Subiendo un Archivo al Servidor FTP

    Code:
    <?php
    
    // Establece una conexion FTP
    
    $conn_id = ftp_connect("ftp.empresa.com");
    
    // Logearse: Usuario y contraseña
    
    $login_result = ftp_login($conn_id, "koky", "secreto");
    
    // Subir un archivo
    
    $upload = ftp_put($conn_id, "archivo_remoto.txt", "c:\archivo_local.txt", FTP_BINARY);
    
    // Verificar subida del archivo
    
    if(!$upload){
    
     echo "Error al subir al servidor FTP";
    
    } else {
    
     echo "Archivo subido al servidor FTP";
    
    }
    
    // Cierra una conexion FTP
    
    ftp_close($conn_id);
    
    ?>
    La función ftp_get() recibe 4 parametros:

    Code:
    ftp_get($conn_id, $archivo_local, $archivo_remoto, $modo_transferencia);
    El $conn_id se trata del identificador que retorna la función ftp_connect().

    El $archivo_local indica el archivo que vamos a subir.

    El $archivo_remoto se refiere a la ubicación y nombre que tendrá el archivo cuando se suba al servidor FTP.

    Y el $modo_tranferencia indica el modo de transferencia que debe ser : FTP_ASCII o FTP_BINARY.

    Descargando un archivo del Servidor FTP

    Code:
    <?php
    
    // Establece una conexion FTP
    
    $conn_id = ftp_connect("ftp.empresa.com");
    
    // Logearse: Usuario y Contraseña
    
    $login_result = ftp_login($conn_id, "koky", "secreto");
    
    // Bajando el archivo ftp.php del servidor FTP y grabarlo en el disco duro
    
    if(ftp_get($conn_id, "c:\archivo_local.txt", "archivo_remoto.txt", FTP_ASCII)){
      echo "Hecho \n";
    } else {
      echo "Hubo un problema al bajar el archivo. \n";
    }
    
    // Cierra una conexión FTP
    ftp_close($conn_id);
    
    ?>
    Nota: Ojo chicos el modo de transferencia del tipo FTP_ASCII trata al archivo como si fuera un texto, y debe ser usado para la transferencia de archivos de texto. En cambio, FTP_BINARY nos permite transferir además programas ejecutables, documentos de procesadores de texto, hojas de calculo, bases de datos, gráficos, archivos de sonidos, etc.

    Bueno eso es todo por ahora... ya luego colocare algo diferente para variar de tema

    Se despide su humilde servidor...D'yaboo

  • Reply to Thread

    Facebook Comments

    Bookmarks

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts

    Search Engine Optimization by vBSEO 3.5.1