Foros del Web » Programando para Internet » PHP »

Mostrar Archivos en un Menu

Estas en el tema de Mostrar Archivos en un Menu en el foro de PHP en Foros del Web. Buenas a todos Les presento mi problema. Resulta que necesito listar todos los archivos .PHP que haya dentro de una carpeta en mi servidor, y ...
  #1 (permalink)  
Antiguo 29/08/2008, 13:34
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 8 meses
Puntos: 12
Pregunta Mostrar Archivos en un Menu

Buenas a todos

Les presento mi problema. Resulta que necesito listar todos los archivos .PHP que haya dentro de una carpeta en mi servidor, y que este listado de archivos, ya sean 0, 1, 3 o 20 archivos, vayan a parar a un campo Select de mi Formulario, para luego insertar la URL resultante a la Base de Datos.

Supongamos que tengo estos archivos en la carpeta /LISTA:

Código:
pipa1.php
pipa2.php
pipa4.php
Y que el menu simplemente me muestre entre sus opciones como Etiqueta un nombre, y como Valor esta misma URL, para meter el contenido en la BD, algo como si selecciona la tercer opcion, a la base de datos vaya a parar el valor: 'pipa4.php'

Gracias por su tiempo, un Saludo
__________________
CabaSoft Networks
  #2 (permalink)  
Antiguo 29/08/2008, 15:20
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: Mostrar Archivos en un Menu

Hola nicolyto77,

No especificas la duda que tienes, si lo que quieres es saber como listar, debes de usar las funciones de directorio como opendir, readdir y closedir.

Si lo que quieres es dibujar el select, te recomiendo vayas a w3schools.com y veas la sintaxis del elemento <select>.

Para insertar en la Base de Datos, puedes ver en las FAQs o buscar en Google un tutorial sobre PHP + MySQL.

Saludos.
  #3 (permalink)  
Antiguo 29/08/2008, 21:57
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 8 meses
Puntos: 12
Respuesta: Mostrar Archivos en un Menu

Hola

Gracias GatorV, mi problema es Listar los archivos, ya que no me manejo bien con las funciones nuevas y los bucles. Calculo que el resultado sabria meterlo al Select, pero no me sale lo de listar, estoy leyendo el manual de PHP oficial, pero

Saludos, Gracias igualmente
__________________
CabaSoft Networks
  #4 (permalink)  
Antiguo 30/08/2008, 05:52
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 20 años, 2 meses
Puntos: 71
Respuesta: Mostrar Archivos en un Menu

Cita:
Iniciado por nicolyto77 Ver Mensaje
Hola

Gracias GatorV, mi problema es Listar los archivos, ya que no me manejo bien con las funciones nuevas y los bucles. Calculo que el resultado sabria meterlo al Select, pero no me sale lo de listar, estoy leyendo el manual de PHP oficial, pero

Saludos, Gracias igualmente
solo tenias que entrar en php.net y mirar la funcion readdir, el primer ejemplo te da la solucion.
  #5 (permalink)  
Antiguo 30/08/2008, 10:13
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 16 años, 3 meses
Puntos: 105
Respuesta: Mostrar Archivos en un Menu

Cita:
Iniciado por nicolyto77 Ver Mensaje
Buenas a todos

Les presento mi problema. Resulta que necesito listar todos los archivos .PHP que haya dentro de una carpeta en mi servidor, y que este listado de archivos, ya sean 0, 1, 3 o 20 archivos, vayan a parar a un campo Select de mi Formulario, para luego insertar la URL resultante a la Base de Datos.

Supongamos que tengo estos archivos en la carpeta /LISTA:

Código:
pipa1.php
pipa2.php
pipa4.php
Y que el menu simplemente me muestre entre sus opciones como Etiqueta un nombre, y como Valor esta misma URL, para meter el contenido en la BD, algo como si selecciona la tercer opcion, a la base de datos vaya a parar el valor: 'pipa4.php'

Gracias por su tiempo, un Saludo
man tu codigo debe ser algo asi:

Código PHP:
<?php
$carpeta_buscada
='carpeta/';
if (
$gestor opendir($carpeta_buscada)) {    
    
//haces una primera conexion a la carpeta para extraer los archivos    
    
while (false !== ($arch readdir($gestor))){
        if (
$arch != "." && $arch != "..") {//para que no agarre archivos de servidor
            //este codigo es para validar su extension, alternativo ah, pero ponlo, asi es mejor....
            
$extension explode(".",$arch);//separas por puntos los archivos
            
$num count($extension)-1;//sacamos cual es la posicion de la extension
            
$ext=strtolower($extension[$num]);//la convertimos a minusculas
            //y por ultimo guardamos en un array solo los archivos con las extensiones que pongas
            
if($ext=='php' or $ext=='html'){ $archivos[]=$arch; }//puedes poner otas ah...
        
}
    }
    
closedir($gestor);//cierras la primera conexion
    
sort($archivos);// Ordenas tu array:
    
reset($archivos);// (y mueves el puntero interno del array al principio ..)
    
echo "<ul>";//para que los muestres con viñetas
    
foreach ($archivos as $arch){//recorres tu array
        
echo "<li><a href='".$carpeta_buscada.$arch."' >".$arch."</a></li>\n";//pintas los archivos
    
}
    echo 
"</ul>"
}
?>
un gusto.... esperando tu respuesta ps...
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #6 (permalink)  
Antiguo 30/08/2008, 13:11
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 20 años, 2 meses
Puntos: 71
Respuesta: Mostrar Archivos en un Menu

Cita:
Iniciado por masterojitos Ver Mensaje
man tu codigo debe ser algo asi:

Código PHP:
<?php
$carpeta_buscada
='carpeta/';
if (
$gestor opendir($carpeta_buscada)) {    
    
//haces una primera conexion a la carpeta para extraer los archivos    
    
while (false !== ($arch readdir($gestor))){
        if (
$arch != "." && $arch != "..") {//para que no agarre archivos de servidor
            //este codigo es para validar su extension, alternativo ah, pero ponlo, asi es mejor....
            
$extension explode(".",$arch);//separas por puntos los archivos
            
$num count($extension)-1;//sacamos cual es la posicion de la extension
            
$ext=strtolower($extension[$num]);//la convertimos a minusculas
            //y por ultimo guardamos en un array solo los archivos con las extensiones que pongas
            
if($ext=='php' or $ext=='html'){ $archivos[]=$arch; }//puedes poner otas ah...
        
}
    }
    
closedir($gestor);//cierras la primera conexion
    
sort($archivos);// Ordenas tu array:
    
reset($archivos);// (y mueves el puntero interno del array al principio ..)
    
echo "<ul>";//para que los muestres con viñetas
    
foreach ($archivos as $arch){//recorres tu array
        
echo "<li><a href='".$carpeta_buscada.$arch."' >".$arch."</a></li>\n";//pintas los archivos
    
}
    echo 
"</ul>"
}
?>
un gusto.... esperando tu respuesta ps...
a un muerto de hambre, no hay que darle comida, sino que hay que enseñarle a cazar/pescar/cultivar
  #7 (permalink)  
Antiguo 31/08/2008, 21:47
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 8 meses
Puntos: 12
De acuerdo Respuesta: Mostrar Archivos en un Menu

Muchas Gracias a ambos

Te agradezco el ejemplo masterojitos, voy a tenerlo en cuenta.

Cita:
Iniciado por DooBie
a un muerto de hambre, no hay que darle comida, sino que hay que enseñarle a cazar/pescar/cultivar


Asi es, pero igualmente me sirvio mucho el codigo para verlo y cotejar con mis errores, gracias DooBie tambien, leere esa seccion, aunke siempre leo del manual oficial como puse arriba en el primer post... a veces pregunto porque no lo entendi o tal vez no quiero copiar el code de ahi sin entenderlo.

Saludos
__________________
CabaSoft Networks
  #8 (permalink)  
Antiguo 01/09/2008, 06:37
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: Mostrar Archivos en un Menu

mi karma es para: (redobles) zzZZZzzzZzzZzzz....

* participante numero uno:

Cita:
[...] o tal vez no quiero copiar el code de ahi sin entenderlo.


** participante numero tres:

Cita:
[...] un gusto.... esperando tu respuesta ps...


*** participante numero tres:

Cita:
[...] a un muerto de hambre, no hay que darle comida, sino que hay que enseñarle a cazar/pescar/cultivar



--



suerte a todos!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
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:28.