Foros del Web » Programando para Internet » PHP »

No se ven las imagenes que subo por ftp

Estas en el tema de No se ven las imagenes que subo por ftp en el foro de PHP en Foros del Web. Mi problema es el siguiente, uso un FILE en una web construida en PHP para subir fotos por ftp a mi servidor, el caso que ...
  #1 (permalink)  
Antiguo 28/07/2009, 02:21
Avatar de anibalag85  
Fecha de Ingreso: marzo-2009
Mensajes: 52
Antigüedad: 15 años, 1 mes
Puntos: 1
No se ven las imagenes que subo por ftp

Mi problema es el siguiente, uso un FILE en una web construida en PHP para subir fotos por ftp a mi servidor, el caso que siempre que he hecho eso me ha ido bien, pero ahora he subido las fotos y en el servidor están subidas pero se ven en blanco y siempre pesan lo mismo.

Alguien me podría ayudar por favor.

El código es el siguiente:

<?php

function SubirFTP($servidor,$puerto,$user,$pass,$archivo,$r uta)
{

$id_ftp=ConectarFTP($servidor,$puerto,$user,$pass) ;
$archivo_local=$archivo["tmp_name"];
$fichero=$archivo["name"];

if(ComprobarExtension($fichero)==true)
{
if(ComprobarExistente($id_ftp,$ruta,$fichero)==tru e)
{
$correcto=SubirArchivo($fichero,$archivo_local,$ru ta,$id_ftp);
ftp_close($id_ftp);
return $correcto;
}
else
{
return false;
}
}
else
{
return false;
}
}

function ConectarFTP($servidor,$puerto,$user,$pass)
{
//Permite conectarse al Servidor FTP
$id_ftp=ftp_connect($servidor,$puerto); //Obtiene un manejador del Servidor FTP
if(!$id_ftp)
{
echo "Error al conectar.";
}
$login=ftp_login($id_ftp,$user,$pass); //Se loguea al Servidor FTP
if(!$login)
{
echo "Error al loguearse";
}
ftp_pasv($id_ftp,"true"); //Establece el modo de conexion
return $id_ftp; //Devuelve el manejador a ladie(); funcion
}

function ComprobarExtension($fichero)
{
if(!eregi("jpeg",$fichero) && !eregi("jpg",$fichero)&& !eregi("gif",$fichero)&& !eregi("png",$fichero)&& !eregi("JPG",$fichero)&& !eregi("JPEG",$fichero)&& !eregi("GIF",$fichero)&& !eregi("PNG",$fichero))
{
?>
<script language="JavaScript" type="text/javascript">
alert("Las extensiones de las imagenes deben de ser jpg, jpeg, gif o png.");
</script>
<?php
return false;
}
else
{
return true;
}
}

function SubirArchivo($nombre_remoto,$archivo_local,$ruta,$ id_ftp)
{

ftp_chdir($id_ftp,$ruta);
$accion=ftp_put($id_ftp,$nombre_remoto,$archivo_lo cal,FTP_ASCII);
if($accion==true)
{
return true;
}
else
{
?>
<script language="JavaScript" type="text/javascript">
alert("No se pudo subir alguno de los ficheros. Si el problema persiste consulte con el administrator.");
</script>
<?php
return false;
}

}

function ComprobarExistente($id_ftp,$ruta,$fichero)
{
$archivos=ftp_nlist($id_ftp,$ruta);

foreach($archivos as $indice =>$archivo)
{
if($fichero==substr($archivo,strlen($ruta),strlen( $archivo)-strlen($ruta)))
{
?>
<script language="JavaScript" type="text/javascript">
alert("El nombre del archivo ya existe en el servidor. Por favor, cambie el nombre del archivo.");
</script>
<?php

return false;
}

}
return true;
}
function Eliminar($id_ftp,$ruta_archivo)
{
if(ftp_delete($id_ftp,$ruta_archivo)==true)
{
return true;
}
else
{
?>
<script language="JavaScript" type="text/javascript">
alert("El archivo no pudo ser eliminado del servidor. Si el problema persiste consulte con su administrador.");
</script>
<?php
return false;
}
}
?>
  #2 (permalink)  
Antiguo 28/07/2009, 08:00
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 7 meses
Puntos: 55
Respuesta: No se ven las imagenes que subo por ftp

no revise la logica del codigo, pero si corregi 4 errores de sintaxis

<?php

function SubirFTP($servidor,$puerto,$user,$pass,$archivo,$r uta)
{

$id_ftp=ConectarFTP($servidor,$puerto,$user,$pass) ;
$archivo_local=$archivo["tmp_name"];
$fichero=$archivo["name"];

if(ComprobarExtension($fichero)==true)
{
if(ComprobarExistente($id_ftp,$ruta,$fichero)==tru e)
{
$correcto=SubirArchivo($fichero,$archivo_local,$ru ta,$id_ftp);
ftp_close($id_ftp);
return $correcto;
}
else
{
return false;
}
}
else
{
return false;
}
}

function ConectarFTP($servidor,$puerto,$user,$pass)
{
//Permite conectarse al Servidor FTP
$id_ftp=ftp_connect($servidor,$puerto); //Obtiene un manejador del Servidor FTP
if(!$id_ftp)
{
echo "Error al conectar.";
}
$login=ftp_login($id_ftp,$user,$pass); //Se loguea al Servidor FTP
if(!$login)
{
echo "Error al loguearse";
}
ftp_pasv($id_ftp,"true"); //Establece el modo de conexion
return $id_ftp; //Devuelve el manejador a ladie(); funcion
}

function ComprobarExtension($fichero)
{
if(!eregi("jpeg",$fichero) && !eregi("jpg",$fichero)&& !eregi("gif",$fichero)&& !eregi("png",$fichero)&& !eregi("JPG",$fichero)&& !eregi("JPEG",$fichero)&& !eregi("GIF",$fichero)&& !eregi("PNG",$fichero))
{
?>
<script language="JavaScript" type="text/javascript">
alert("Las extensiones de las imagenes deben de ser jpg, jpeg, gif o png.");
</script>
<?php
return false;
}
else
{
return true;
}
}

function SubirArchivo($nombre_remoto,$archivo_local,$ruta,$ id_ftp)
{

ftp_chdir($id_ftp,$ruta);
$accion=ftp_put($id_ftp,$nombre_remoto,$archivo_lo cal,FTP_ASCII);
if($accion==true)
{
return true;
}
else
{
?>
<script language="JavaScript" type="text/javascript">
alert("No se pudo subir alguno de los ficheros. Si el problema persiste consulte con el administrator.");
</script>
<?php
return false;
}

}

function ComprobarExistente($id_ftp,$ruta,$fichero)
{
$archivos=ftp_nlist($id_ftp,$ruta);

foreach($archivos as $indice =>$archivo)
{
if($fichero==substr($archivo,strlen($ruta),strlen( $archivo)-strlen($ruta)))
{
?>
<script language="JavaScript" type="text/javascript">
alert("El nombre del archivo ya existe en el servidor. Por favor, cambie el nombre del archivo.");
</script>
<?php

return false;
}

}
return true;
}
function Eliminar($id_ftp,$ruta_archivo)
{
if(ftp_delete($id_ftp,$ruta_archivo)==true)
{
return true;
}
else
{
?>
<script language="JavaScript" type="text/javascript">
alert("El archivo no pudo ser eliminado del servidor. Si el problema persiste consulte con su administrador.");
</script>
<?php
return false;
}
}
?>
__________________
Degiovanni Emilio
developtus.com
  #3 (permalink)  
Antiguo 04/08/2009, 01:57
Avatar de anibalag85  
Fecha de Ingreso: marzo-2009
Mensajes: 52
Antigüedad: 15 años, 1 mes
Puntos: 1
Perdona emiliodeg, pero no veo donde están tus 4 modificaciones porque copio el código que has puesto y no funciona. Si me pudieras decir cuales son las modificaciones de sintaxis las cambio en mi código y lo pruebo ha ver si ya me funciona.
Gracias

El problema fundamenteal, es que el ftp tal como lo tengo lo prueba en un servidor de hosting (que es linux) y funciona de maravilla, y ahora lo pruebo en un servidor local (que es windows) y como ya te digo, se sube muy bien, incluso hace las comprobaciones pertinentes y todo, pero al mirar la foto que se ha subido no pesa casi nada y pone "vista previa no disponible".
A ver si así aclaro algo.
Gracias por vuestra ayuda

Última edición por GatorV; 04/08/2009 a las 10:52
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:48.