Autor Tema: Sistema de Modulacion [index.php?page=seccion] (otra forma)  (Leído 1033 veces)

Desconectado Jumarras

  • PHPer@
  • **
  • Mensajes: 73
  • Karma: 3
  • Sexo: Masculino
  • Ten cerca a tus amigos, pero mas a tus enemigos
    • Ver Perfil
Sistema de Modulacion [index.php?page=seccion] (otra forma)
« en: 26 de Diciembre de 2010, 00:46:11 am »
Hola, pues estaba echandole una ojeada al post de Naveda (http://www.phperos.net/foro/index.php?topic=305.msg2454#msg2454), y me vino a la cabeza ¿porque no crear un sistema de modulacion que solo funcione metiendo archivos en una carpeta?, pues lo he conseguido, es facilillo, pero bueno, seguramente a mas de uno le vendra muy bien.

Bueno, antes de nada, decir que solo teneis que editar una variable, que sera el nombre de la carpeta donde esten los modulos, nada mas xD

Debeis crear un archivo con cualquier  nombre oara meter este codigo, y tambien una carpeta.

ejemplo:
Creamos un index.php y luego intruducimos el codigo de abajo.
Creamos una carpeta con el nombre de Modulos, y alli metemos lo que queramos login.php, registro.php...(recuerda que deben tener un nombre aceptable, porque con este nombre se creara el menu)

Código: [Seleccionar]
<?php
$modules 
= &#39;modulos&#39;; //una variable para el nombre de la carpeta donde estaran los modulos
$directory dir($modules); //especificamos la carpeta y la abrimos
while (false !== ($entry $directory->read())) { //hacemos un bucle para leer los archivos 1 en 1
if($entry == "." or $entry == ".."){ //omitimos los valores de lso archivos &#39;.&#39; y &#39;..&#39;
    
}
    else{
$filename str_replace(&#39;.php&#39;, &#39; &#39;, $entry); //de los archivos optenidos quitamos la extension .php
$indexname basename($_SERVER["SCRIPT_NAME"]); //obtenemos el nombre del archivo principal, no el de los modulos (index.php)
echo &#39;<a href="&#39;.$indexname.&#39;?page=&#39;.$filename.&#39;">&#39;.$filename."</a><br>"; //hacemos un menu para mover entre los modulos
    
}
}
$directory->close(); //cerramos el directorio
if ($_GET[&#39;page&#39;]){ //optenemos la variable page del $_GET
include_once $modules.&#39;/&#39;.$_GET[&#39;page&#39;].&#39;.php&#39;; //incluimos el archivo que hemos llamado
}
?>

Salu2!

Comunidad PHPeros

Sistema de Modulacion [index.php?page=seccion] (otra forma)
« en: 26 de Diciembre de 2010, 00:46:11 am »

Desconectado Miguelithox

  • PHPerit@
  • *
  • Mensajes: 28
  • Karma: 1
    • Ver Perfil
Re:Sistema de Modulacion [index.php?page=seccion] (otra forma)
« Respuesta #1 en: 04 de Enero de 2011, 05:53:35 am »
Te felicito y se agradece. Pero no estaría mal tomar el código de SMF y así empezar a hacer tu propio sitio web, en el cual haces ?accion=nombre y luego el archivo busca la accion nombre, en qué archivo se encuentra, y en qué function dentro del archivo :D