Foros del Web » Programando para Internet » PHP »

problema al subir foto en xp

Estas en el tema de problema al subir foto en xp en el foro de PHP en Foros del Web. hola maestros tal wez no tenga nada que ver aqui pero , hice un script php que sube fotos jpg sin problemas en win98 pero ...
  #1 (permalink)  
Antiguo 24/03/2004, 14:18
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.895
Antigüedad: 15 años
Puntos: 2
problema al subir foto en xp

hola maestros tal wez no tenga nada que ver aqui pero , hice un script php que sube fotos jpg sin problemas en win98 pero si lo hago en xp me pone problemas al reconocer el formato de la foto y no me permire subirla , yo pruebo el envio desde mi pc en win98 , no pone ningun problema pero si alguien lo hace en xp pasa eso

¿alguien sabe cual sera el problema?

muchas gracias...
  #2 (permalink)  
Antiguo 24/03/2004, 14:29
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

¿Quieres decir que el con el servidor en w98 funciona, y con el servidor en XP no? ¿O que usando como cliente w98 funciona, y desde xp no?

¿Que codigo usas para verificar el formato?

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 24/03/2004, 14:42
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.895
Antigüedad: 15 años
Puntos: 2
perdon , ,me refiero al usar win98 y xp como clientes
  #4 (permalink)  
Antiguo 24/03/2004, 14:47
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
¿T que usas para verificar el formato? Porque si usas el tipo MIME, en los mismos comentarios de http://www.php.net/manual/en/features.file-upload.php comentan que distintos navegadores envian distintas cadenas de tipo MIME.

Asi que si usas el tipo MIME para validar el formato, haz un echo del tipo MIME y mira si son distintas cadenas para el w98 y el xp.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 25/03/2004, 06:49
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.895
Antigüedad: 15 años
Puntos: 2
hola no entiendo bien eso de mime pero yo lo hago asi para subir la fotografias.

¿a esto te refieres con mime ?
¿cual podria ser la posible solucion?
muchas gracias..

<form ENCTYPE="multipart/form-data" method="post" action="subir.php">
BUSCAR FOTO EN SU PC:
<input name="userfile[]" type="file">
REINGRESAR LA PATENTE
<input name=patente value="<?php echo $patente; ?>">

</form>


extracto de script que muestra el error

for($i=0; $i<$N; $i++)

{
if (is_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'][$i]))
{
$split_path = split("/", $HTTP_POST_FILES['userfile']['name'][$i]);
$split_path = end ($split_path);
$extension = split("[/.]", $split_path);
if (end($extension)!= "jpg" )
{
echo "tipo de archivo invalido, debe ser JPG"; //esto muestra

}
  #6 (permalink)  
Antiguo 25/03/2004, 07:35
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
En ese caso haz un echo de $HTTP_POST_FILES['userfile']['name'][$i] junto con el del mensaje de error.

La cuestion es que tu validas contra un valor enviado por el navegador. Nunca des por supuesto nada sobre lo que viene del navegador. Si con un navegador te funciona y con otro no, muestra los datos que usas para las comparaciones con un echo.

Por ejemplo le veo un problema a tu codigo. ¿Que pasa si subes imagen.JpG? Si no recuerdo mal, la comparacion en PHP distingue entre mayusculas y minusculas. Tambien se que windows muestra como le de la gana los nombres de los ficheros. Y puede que en este caso w98 siempre envie el nombre en minusculas, con lo que funciona tu comparacion. Pero, ¿y si XP lo manda siempre en mayuscula? Pues la comparacion falla. Siempre que quieras comparar texto y no te importe si estan en mayusculas o minusculas, usa la funcion strtolower() (www.php.net/strtolower) o strtoupper() (www.php.net/strtoupper) para poner el valor entrante en el mismo formato que tu cadena de comparacion. Cuidado, porque esas funciones pueden fallar con acentos y ñ. Tambien suele ser recomendable la funcion trim().

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 25/03/2004, 07:57
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.895
Antigüedad: 15 años
Puntos: 2
muchas gracias por tu orientacion........voy a revizar eso
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 09:26.