Comunidad de diseño web y desarrollo en internet online

Error PHP en FTP

Citar            
MensajeEscrito el 09 Nov 2007 11:10 pm
Hola a todos!

He creado mi server y he seguido esta guia para crear mi webFTP:

http://www.cristalab.com/tutoriales/112/subir-archivos-con-php-por-ftp


Código :

<?php
   // Primero creamos un ID de conexión a nuestro servidor
   $cid = ftp_connect("miip.dyndns.com");
   // Luego creamos un login al mismo con nuestro usuario y contraseña
   $resultado = ftp_login($cid, "user","passw");
   // Comprobamos que se creo el Id de conexión y se pudo hacer el login
   if ((!$cid) || (!$resultado)) {
      echo "Fallo en la conexión"; die;
   } else {
      echo "Conectado.";
   }
   // Cambiamos a modo pasivo, esto es importante porque, de esta manera le decimos al 
   //servidor que seremos nosotros quienes comenzaremos la transmisión de datos.
   ftp_pasv ($cid, true) ;
   echo "<br> Cambio a modo pasivo<br />";
   // Nos cambiamos al directorio, donde queremos subir los archivos, si se van a subir a la raíz
   // esta por demás decir que este paso no es necesario. En mi caso uso un directorio llamado pujades
   ftp_chdir($cid, "pujades");
   echo "Cambiado al directorio necesario";   
   // Tomamos el nombre del archivo a transmitir, pero en lugar de usar $_POST, usamos $_FILES que le indica a PHP
   // Que estamos transmitiendo un archivo, esto es en realidad un matriz, el segundo argumento de la matriz, indica
   // el nombre del archivo
   $local = $_FILES["archivo"]["name"];
   // Este es el nombre temporal del archivo mientras dura la transmisión
   $remoto = $_FILES["archivo"]["tmp_name"];
   // El tamaño del archivo
   $tama = $_FILES["archivo"]["size"];
   echo "<br />$local<br />";
   echo "$remoto<br />";
   echo "subiendo el archivo...<br />";
   // Juntamos la ruta del servidor con el nombre real del archivo
   $ruta = "/opt/lampp/htdocs/inc/pujades/" . $local;
   // Verificamos si no hemos excedido el tamaño del archivo
   if (!$tama<=$_POST["MAX_FILE_SIZE"]){
      echo "Excede el tamaño del archivo...<br />";
   } else {
      // Verificamos si ya se subio el archivo temporal
      if (is_uploaded_file($remoto)){
         // copiamos el archivo temporal, del directorio de temporales de nuestro servidor a la ruta que creamos
         copy($remoto, $ruta);      
      }
      // Sino se pudo subir el temporal
      else {
         echo "no se pudo subir el archivo " . $local;
      }
   }
   echo "Ruta: " . $ruta;
   //cerramos la conexión FTP
   ftp_close($cid);
?>


Cuando accedo a ftp.php, que es donde busco el archivo a subiar al ftp lo hace correctamente.

Pero el error viene cuando intento subir el archivo.

El firefox me muestra este error:

Conectado.
Cambio a modo pasivo

Warning: ftp_chdir() [function.ftp-chdir]: pujades: No such file or directory in /opt/lampp/htdocs/inc/recibe.php on line 18
Cambiado al directorio necesario
pacman.jpg
/tmp/phpSUyufA
subiendo el archivo...
Excede el tamaño del archivo...
Ruta: /opt/lampp/hdocs/inc/pujades/pacman.jpg


Alguna ayuda, por favor?

Muchas gracias!!

Por Traca

5 de clabLevel



Genero:Femenino  

firefox
Citar            
MensajeEscrito el 10 Nov 2007 02:57 pm
Traca, el mensaje No such file or directory claramente indica que no existe la carpeta a la que quieres entrar, revisa que exista o que estás usando las rutas correctas, eso debería arreglar el resto.

Por Aoyama

BOFH

6224 de clabLevel

6 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Bastard Operators From Hell

Webdesigner & Developer, en mis ratos libres bebo café por litros.

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.