Foros del Web » Programando para Internet » PHP »

Problema en IE al subir imagen con PHP

Estas en el tema de Problema en IE al subir imagen con PHP en el foro de PHP en Foros del Web. Hola Estoy haciendo una pagina y en ella necesito subir imagenes, pero me funciona en otros navegadores solo en IE8 no. El problema es que ...
  #1 (permalink)  
Antiguo 22/04/2012, 19:21
 
Fecha de Ingreso: diciembre-2011
Mensajes: 159
Antigüedad: 12 años, 4 meses
Puntos: 18
Problema en IE al subir imagen con PHP

Hola

Estoy haciendo una pagina y en ella necesito subir imagenes, pero me funciona en otros navegadores solo en IE8 no.

El problema es que le agrego

if ( ($_FILES['archivo']['type']) != "image/gif"){
if ( ($_FILES['archivo']['type']) != "image/png") {
if ( ($_FILES['archivo']['type']) != "image/jpeg") {
exit;
}
}
}

para evitar que suban cualquier tipo de archivo, al quitarlo funciona sin problemas en el IE, asi que supongo que algo tengo mal, pero no logro ver que es.

ya he tratado de acomodarlo de alguna otra forma, como usar OR o explotar el ($_FILES['archivo']['type']) para conseguir el tipo de archivo y de ahi usar el if, pero no funciona de cualquiera de esas maneras, solo al quitarlo.

Agradezco cualquier ayuda.

Saludos
  #2 (permalink)  
Antiguo 22/04/2012, 19:27
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema en IE al subir imagen con PHP

Sería interesante saber que valor recibes específicamente bajo dicha variable en IE8, eso de adivinar no se da mucho por aquí.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 22/04/2012, 19:40
 
Fecha de Ingreso: diciembre-2011
Mensajes: 159
Antigüedad: 12 años, 4 meses
Puntos: 18
Respuesta: Problema en IE al subir imagen con PHP

Gracias por responder

el problema es que el llamado lo hace por medio de javascript desde una pagina a otra y la verdad no se como sacar la variable desde ahi, ya trate poniendola como variable de sesion pero no me envia nada.

Saludos
  #4 (permalink)  
Antiguo 22/04/2012, 19:46
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema en IE al subir imagen con PHP

Me refiero a tu código de php por supuesto:
Código PHP:
$_FILES['archivo']['type'
Cuando recibes el archivo desde IE8 ¿que valor arroja si imprimes esta variable?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 22/04/2012, 19:49
 
Fecha de Ingreso: diciembre-2011
Mensajes: 159
Antigüedad: 12 años, 4 meses
Puntos: 18
Respuesta: Problema en IE al subir imagen con PHP

Hola

Ya encontre la respuesta, lo dejo por si a alguien le sirve

if ( ($_FILES['archivo']['type']) != "image/gif"){
if ( ($_FILES['archivo']['type']) != "image/png") {
if ( ($_FILES['archivo']['type']) != "image/jpeg") {
if ( ($_FILES['archivo']['type']) != "image/x-png") {
if ( ($_FILES['archivo']['type']) != "image/pjpeg") {
exit;
}
}
}
}
}

Se que se puede poner de otra forma pero fue la mas rapida en este momento.

IE saca los tipos de archivo como pjpeg para jpg y x-png para png, el gif es igual, lo puse de la forma que muestro y funciona para todos los navegadores que he usado

IE, FF, CR y Safari.

Saludos
  #6 (permalink)  
Antiguo 22/04/2012, 20:52
Avatar de gustavopino  
Fecha de Ingreso: septiembre-2011
Ubicación: venezuela
Mensajes: 152
Antigüedad: 12 años, 7 meses
Puntos: 29
Respuesta: Problema en IE al subir imagen con PHP

Amigo por que hacer tantos if si puedes hacer un switch/case te dejo el codigo:
Código PHP:
Ver original
  1. switch($_FILES['archivo']['type']){
  2.  case "image/gif":
  3.  //... sentencias ../
  4.  break;
  5.  case "image/png":
  6.  //... sentencias ../
  7.  break;
  8.  case "image/jpeg":
  9.  //... sentencias ../
  10.  break;
  11.  case "image/x-png":
  12.  //... sentencias ../
  13.  break;
  14.  case "image/pjpeg":
  15.  //... sentencias ../
  16.  break;
  17.  default:
  18. echo "formato no disponible";
  19.  break;
  20. }
__________________
Visita a Publiventa donde compras y vendes de todo

Etiquetas: imagenes
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 01:20.