Foros del Web » Programando para Internet » PHP »

Evitar que mi código muestre las extensiones de los archivos

Estas en el tema de Evitar que mi código muestre las extensiones de los archivos en el foro de PHP en Foros del Web. Tengo este código mediante el cual hago una lista de todas las imagenes que hay dentro de la carpeta "imagenes": Código PHP: <? $i  =  ...
  #1 (permalink)  
Antiguo 23/06/2010, 01:59
 
Fecha de Ingreso: diciembre-2009
Mensajes: 92
Antigüedad: 14 años, 11 meses
Puntos: 13
Busqueda Evitar que mi código muestre las extensiones de los archivos

Tengo este código mediante el cual hago una lista de todas las imagenes que hay dentro de la carpeta "imagenes":
Código PHP:
<?
$i 
1;
if(
$gestor=opendir('imagenes')) 
 { 
     while ((
$archivo=readdir($gestor))!==false
     { 
      if ((
$archivo!='.')and($archivo!='..')) {
          echo 
"&imagen".$i."=".$archivo;
          
$i++;
          }
     } 
     echo 
"&numero_imagenes=".($i-1);
     
closedir($gestor); 
 }  
 
?>
El problema es que también me muestra su extensión, ej:
imagen1=casa.png&imagen2=arbol.png....
Y me gustaria que saliera así:
imagen1=casa&imagen2=arbol....

Como puedo evitar que salgan las extensiones?

Gracias.
  #2 (permalink)  
Antiguo 23/06/2010, 02:16
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 15 años, 3 meses
Puntos: 150
Respuesta: Evitar que mi código muestre las extensiones de los archivos

Prueba con stristr($imagen, '.', true) en vez de $imagen, te devuelve lo que haya antes del primer punto, aunque claro..... como haya mas de un punto en el nombre del archivo....
  #3 (permalink)  
Antiguo 23/06/2010, 02:50
 
Fecha de Ingreso: diciembre-2009
Mensajes: 92
Antigüedad: 14 años, 11 meses
Puntos: 13
Respuesta: Evitar que mi código muestre las extensiones de los archivos

No tengo ninguna variable llamada $imagen, la variable que se imprime es $archivo, porqué quiero que el texto se me muestre asi:

&imagen1=casa.png&imagen2=arbol.png&imagen3=lapiz. png

Pero sin las extensiones ".png".

He provado esto:

stristr($archivo, '.', true);

Pero entonces me devuelve esto:

&imagen1=.png&imagen2=.png&imagen3=.png

Tendria de ser esa misma funcion pero que borrara del punto hacia el otro lado (incluido el punto), como se puede hacer?

Gracias.
  #4 (permalink)  
Antiguo 23/06/2010, 03:10
 
Fecha de Ingreso: diciembre-2009
Mensajes: 92
Antigüedad: 14 años, 11 meses
Puntos: 13
Respuesta: Evitar que mi código muestre las extensiones de los archivos

perdón, estuve mirando, y es culpa mia:

Haver:
stristr($archivo, '.', true);
Me dava error, y yo tan ancho le quité el true y funcionava:
stristr($archivo, '.');
Pero he estado mirando, y si se quita el true lee el texto hacia otro lado.

Con el true sirve para PHP 5.3, y yo tengo la version 5.2.

Hay algun codigo para versiones mas antiguas? Gracias.
  #5 (permalink)  
Antiguo 23/06/2010, 03:27
 
Fecha de Ingreso: diciembre-2009
Mensajes: 92
Antigüedad: 14 años, 11 meses
Puntos: 13
Respuesta: Evitar que mi código muestre las extensiones de los archivos

Ya está, ya lo encontré, gracias:

Cita:
echo substr ($archivo, 0, strpos ($archivo, "."));
  #6 (permalink)  
Antiguo 23/06/2010, 10:59
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 15 años, 3 meses
Puntos: 150
Respuesta: Evitar que mi código muestre las extensiones de los archivos

Muy buena, no habia pensado en esa posibilidad, te iba a decir usando explode(), saludos

Etiquetas: extension
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 21:26.