Ver Mensaje Individual
  #5 (permalink)  
Antiguo 14/12/2013, 08:16
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Warning: getimagesize(): Filename cannot be empty

Tu problema es que no dominas programación, siendo decirlo de ese modo, pero ese es el error.
Tu estás validando al principio, pero se te escapa que PHP es un lenguaje lineal, que ejecuta de arriba abajo, y si no lo haces cancelar la ejecución, luego de ese IF seguirá con la primera linea subsiguiente, que es precisamente la que plantea el problema.
Al menos deberías contener todo lo que sigue dentro de un ELSE, y no dejarlo librado a la ejecución.
¿No te parece?

Código PHP:
// Selección de la foto:
if (empty($_FILES['foto']['name'])) {
    
$error true;
    
$mensaje[] = ('Por favor, seleccione una foto para enviar.');
}
else{
// Formato de la foto:
// Peso de la foto:
$peso_permitido 1000000;
$formato getimagesize($_FILES['foto']['tmp_name']);
if (
$formato['mime'] != 'image/jpeg') {
    
$error true;
    
$mensaje[] = ('Sólo se pueden enviar fotos en formato JPG.');
}
elseif (
$_FILES['foto']['size'] > $peso_permitido) {
    
$error true;
    
$mensaje[] = ('No puede enviar fotos mayores a ' ceil($peso_permitido 1024) . ' MB.');
}
else{
//El resto del proceso
}

__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)