Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/12/2012, 15:12
rpichinu
 
Fecha de Ingreso: noviembre-2010
Mensajes: 208
Antigüedad: 14 años
Puntos: 3
programa Sube ficheros vacios via ftp

Que tal:

Encontre el siguiente script que sube directorios via FTP, pero resulta que me sube bien los directorios pero los ficheros se encuentran vacios.


codigo:

Código PHP:
function leerCarpeta($path)
        {
        
$dh opendir($path);
        
$vCarpeta = array();
        
$i=1;
        while ((
$fichero readdir($dh)) !== false)
            {
            
            if(!(
preg_match('/^.{1,2}$/',$fichero)||preg_match('/^.svn[a-z,0-9]*$/',$fichero)))
                {
                if(
is_dir($path.'/'.$fichero))
                    {
                    
$vCarpeta[$fichero] = leerCarpeta($path.'/'.$fichero);
                    
                    }
                else
                    {
                    
$vCarpeta[] = $fichero;
                    echo 
"leyendo fichero...".$i."vez...";
                    }
                
$i++;    
                
                }
            }
        return 
$vCarpeta;
        }    

    
# Función recursiva que sube todos los ficheros de un directorio y crea los directorios del mismo.
     
function subirCarpeta($vCarpeta$path_remoto$path_local$ftpID)
        {
        
        foreach(
$vCarpeta as $campo=>$valor)
            {
            if(
is_array ($valor))//si valor esta en arreglo significa que es un directorio
                
{
                
// Creamos un directorio
                
ftp_mkdir($ftpID$path_remoto.'/'.$campo,0777);
                
subirCarpeta($valor$path_remoto.'/'.$campo$path_local.'/'.$campo$ftpID);
                }
            else
                {
                
// Subimos el fichero
                
echo "subiendo ..............";
                
ftp_put($ftpID$path_remoto.'/'.$valor$path_local.'/'.$valorFTP_ASCII);
                }
        
            }
        }


    
$ftpID ftp_connect('myhost.com');
    
ftp_login($ftpID,'user@myhost','pass');

    
$path_local "/home/prueba";
    
$path_remoto '/prueba/';

    
ftp_mkdir($ftpID$path_remoto);

    
$vCarpetas leerCarpeta($path_local);
    
subirCarpeta($vCarpetas$path_remoto$path_local$ftpID);
    
ftp_close($ftpID); 

a que se debera esto?