Foros del Web » Programando para Internet » PHP »

Comparar extenciones

Estas en el tema de Comparar extenciones en el foro de PHP en Foros del Web. Hola a todos, lo que necesito hacer es mas o menos facil, si la extencion es distinta a jpg,bmp,gif, que se guarde en otro archivo... ...
  #1 (permalink)  
Antiguo 31/01/2013, 15:52
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Pregunta Comparar extenciones

Hola a todos, lo que necesito hacer es mas o menos facil, si la extencion es distinta a jpg,bmp,gif, que se guarde en otro archivo...
lo hice pero no me compara ya que cualquier extencion me lo guarda el la carpeta "otro".

Código PHP:
Ver original
  1. <?
  2. srand ((double) microtime( )*1000000);
  3. $random_number = rand();
  4. $nose="$random_number";
  5. if (count($_FILES)){
  6.     $temp= $_FILES['archivos01']['tmp_name'];
  7.     if(is_uploaded_file($temp)){
  8.         $sep=explode('/',$_FILES["archivos01"]["type"]); // Separamos image/
  9.         $tipo=$sep[1]; // Optenemos el tipo de imagen que es
  10.     if($tipo != "jpg,bmp,gif"){
  11.    
  12.     $destino="otros";
  13.         $ape=$nose;
  14.         $imag=$var04."".$ape.'.'.$tipo;
  15.         trim($todo);
  16.         move_uploaded_file ( $_FILES [ 'archivos01' ][ 'tmp_name' ], $destino . '/' .$imag);  // Subimos el archivo
  17.     }else{
  18.         $destino="imgpublicadas";
  19.         $ape=$nose;
  20.         $imag=$var04."".$ape.'.'.$tipo;
  21.         trim($todo);
  22.         move_uploaded_file ( $_FILES [ 'archivos01' ][ 'tmp_name' ], $destino . '/' .$imag);  // Subimos el archivo
  23.     }
  24.     //print " el archivo fu cargado";
  25.            
  26.     }else{
  27.     //    print "el archivo no fue cargado";
  28.     }
  29.     }

Gracias de antemano saludos a todos
fede
  #2 (permalink)  
Antiguo 31/01/2013, 16:12
Avatar de rottenp4nx  
Fecha de Ingreso: octubre-2012
Ubicación: Santiago
Mensajes: 417
Antigüedad: 11 años, 6 meses
Puntos: 36
Respuesta: Comparar extenciones

Puedes ocupar la función pathinfo()

http://php.net/manual/es/function.pathinfo.php

Código PHP:
Ver original
  1. $extimagen = pathinfo($variableArchivo);
  2.  $ext = array("bmp","gif","jpg","png");
  3.  
  4. if(array_search(($extimagen['extension'],$ext)){
  5.   //una carpeta
  6. }else{
  7. //otra carpeta
  8. }

saludos!

Última edición por rottenp4nx; 31/01/2013 a las 16:17
  #3 (permalink)  
Antiguo 31/01/2013, 17:07
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años
Puntos: 528
Respuesta: Comparar extenciones

Tienes un error de concepto:

if($tipo != "jpg,bmp,gif"){

esto te compara así tal cual si la variable tipo es diferente a la cadena "jpg,bmp,gif"

Tienes varias opciones:

if($tipo != "jpg" && $tipo!="bmp" && $tipo!="gif"){

usar array_search() como menciona rottenp4nx

o bien usar in_array(), que también haría uso de un arreglo con los valores permitidos.
  #4 (permalink)  
Antiguo 01/02/2013, 09:06
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Respuesta: Comparar extenciones

Buenas, gbracias a los dos muy bueno.!!!
se agradece enormemente su tiempo
saludos
gracias.!!!
fede

Etiquetas: Ninguno
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:28.