Foros del Web » Programando para Internet » PHP »

subi imagenes png y jpeg por IE

Estas en el tema de subi imagenes png y jpeg por IE en el foro de PHP en Foros del Web. hola que tal, les cuento; ando haciendo un hosting de imagenes (basandome en el codigo de pato12) y hoy me encontre un problema al tratar ...
  #1 (permalink)  
Antiguo 01/01/2010, 20:09
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 15 años, 3 meses
Puntos: 5
subi imagenes png y jpeg por IE

hola que tal, les cuento; ando haciendo un hosting de imagenes (basandome en el codigo de pato12) y hoy me encontre un problema al tratar de subir imagenes png y jpeg por Internet Explorer, aqui pongo el codigo haber si me pueden echar la mano con el script

Código PHP:
<? 
session_start
();
if(
$_POST){
if (
$_SESSION['tmptxt'] == $_POST['tmptxt']) {
$key="si";
}
else
{
echo 
"El codigo anti SPAM esta mal.";
}
}
if(
$key == "si"){

$str "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";
$cad "";
for(
$i=0;$i<12;$i++) {
$cad .= substr($str,rand(0,62),1);
}

$size $_FILES 'file' ][ 'size' ];
$size_max="3670016 "//3.5 MB
if( $size $size_max){
$destino "img";   
$sep=explode('image/',$_FILES["file"]["type"]);
$tipo=$sep[1];
if(
$tipo == "gif" || $tipo == "png" || $tipo == "jpeg" || $tipo == "bmp"){
move_uploaded_file $_FILES 'file' ][ 'tmp_name' ], $destino'/' .$cad.'.'.$tipo);
include(
'post.php');
}
else echo 
"El tipo de archivo no esta permitido.";
}
else echo 
"El archivo supera el peso permitido.";
}
$archivo=$destino'/' .$cad.'.'.$tipo;
@
chmod($archivo0777); 

$_SESSION['tmptxt']=microtime(); 

?>
cuando subo la imagen png y jpeg por IE simplemente me imprime el "El tipo de archivo no esta permitido.",,, espero que me puedan echar la mano

EDIT: me salio otra duda, como le puedo hacer para que la imagen se guarde en otra carpeta, aparte de la de "img"

saludos y graciass de antemano

Última edición por WinderJerter; 01/01/2010 a las 21:27 Razón: Otra pequeña duda
  #2 (permalink)  
Antiguo 01/01/2010, 21:07
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: subi imagenes png y jpeg por IE

Imprime el tipo, muchas veces IE sube las fotos como image/jpe o similars.

Saludos.
  #3 (permalink)  
Antiguo 02/01/2010, 17:58
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 15 años, 3 meses
Puntos: 5
Respuesta: subi imagenes png y jpeg por IE

Hola que tal Gastor muchass gracias por tu respuesta, que que hice fue poner el print_r() en la linea if(print_r($tipo == "gif" || $tipo == "png" || $tipo == "jpeg" || $tipo == "bmp")) {, no se si asi era la forma correcta de hacerlo, pero en FF me reconoce el formato como png y jpeg y en IE x-png y pjpg, pero en FF cuando subo la imagen me sale "1 La imagen fue enviada con exito." con un 1, eso a que se debe?

Y mi otra duda es ¿como puedo hacerle para guardar la imagen en varias carpetas?

saludos y muchas gracias de antemano

Última edición por WinderJerter; 02/01/2010 a las 18:13
  #4 (permalink)  
Antiguo 02/01/2010, 18:16
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: subi imagenes png y jpeg por IE

WinderJerter, esa no es la forma de usar print_r()

debes hacer antes de utilizar tus variables... osea
Código PHP:
print_r($tipo);
if (
/* comparaciones */// ... 
el 1 es porque tienes el print_r() mal puesto, y además solo es mientras depuras tu script..

lo de mover a distintas carpetas es puro sentido común, osea... simplemente crea la carpeta si no existe, y prefija dicha ruta al nombre del archivo final...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 02/01/2010, 19:19
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 15 años, 3 meses
Puntos: 5
Respuesta: subi imagenes png y jpeg por IE

Cita:
Iniciado por pateketrueke Ver Mensaje
WinderJerter, esa no es la forma de usar print_r()

debes hacer antes de utilizar tus variables... osea
Código PHP:
print_r($tipo);
if (
/* comparaciones */// ... 
el 1 es porque tienes el print_r() mal puesto, y además solo es mientras depuras tu script..

lo de mover a distintas carpetas es puro sentido común, osea... simplemente crea la carpeta si no existe, y prefija dicha ruta al nombre del archivo final...
Hota que tal pateketrueke, lo he echo asi como me explicaste y en FF sale: jpeg La imagen fue enviada con exito. y en IE no me la sube, sale: pjpegEl tipo de archivo no esta permitido.

Saludos!!!
  #6 (permalink)  
Antiguo 02/01/2010, 19:27
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: subi imagenes png y jpeg por IE

ya te lo había dicho GatorV, que en IE los tipos los arroja de otro modo, por eso debes adaptar tus comparaciones...

si sale también pjpeg, ¿que tan difícil es agregarlo en tus comparaciones??
Código PHP:
if (($tipo == "gif" || $tipo == "png" || $tipo == "jpeg" || $tipo == "pjpeg" || $tipo == "bmp")) // ... 
el print_r() era solo para que te dieras cuenta del valor de $tipo, para que luego lo reflexionaras, etc...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 02/01/2010, 19:39
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 15 años, 3 meses
Puntos: 5
Respuesta: subi imagenes png y jpeg por IE

hohoho muchas gracias pateketrueke, perdon por los problemas que te alla ocasionado pero ps la verdad no se casi de PHP pero bueno cada dia se aprende algo nuevo y reitero mis a ti y GatorV.

Saludos
  #8 (permalink)  
Antiguo 04/01/2010, 10:43
(Desactivado)
 
Fecha de Ingreso: junio-2009
Mensajes: 256
Antigüedad: 15 años, 5 meses
Puntos: 1
Respuesta: subi imagenes png y jpeg por IE

en el foro hay un manual de php. ahi te puedes guiar.

Manual de php

saludos.

Etiquetas: imagenes, jpeg, png
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 16:14.