Como modularizar los archivos php?

Iniciado por Skeletron, 3 Marzo 2010, 05:04 AM

0 Miembros y 2 Visitantes están viendo este tema.

MinusFour

#10
Disculpen el doble post, un ejemplo...

index.php
Código (php) [Seleccionar]

<?php
$x 
true;
require_once(
"archivito.php");
//Tu codigo de indice
?>



archivito.php
Código (php) [Seleccionar]

<?php
if(!x){
// Que hacer si el archivo fue accedido directamente
die("Nop, por aqui no");
}

//Tu demas codigo....
?>



Bueno, almenos creo que eso es lo que entendi... mi php, ultimamente no está muy actualizado.

jdc

Síp eso funcionaria, es lo que usa smf aunque con "define" por eso al tratar de ver un archivo directo dice "hack attemt" o algo asi xD y sirve para que la gente no entre directo a www.sitio.com/functions.php además se recomienda poner al principio un error_reporting(0) para evitar errores y un path disclosoure :)

Skeletron

AHhh!!..
QUe buen puntoo!!...
Para evitar que accedan directamente desde la URL!!! Claro.. Ahora entiendo.. Buen punto!.
Lo haré.
Mostrare todo el contenido de REGSITRO.php, solamente si X variable esta definida en true :)

~ Yoya ~

No hagas consultas a la base de datos si no es necesario lo digo por:
Cita de: Skeletron en  3 Marzo 2010, 07:25 AM

Digamos que, cada tabla, tiene un IF, ELSEIF, ELSEIF.... en cada uno de ellos, haré un INCLUDE al que sea necesario ;)
Puedes hacer dos cosas para según tu post, puedes crear un código con el diseño de la web y cada vez que necesites el mismo diseño llamarlo, lo mejor seria crear el código del diseño en cada archivo que necesite diseño porque a la hora de editar algún archivo afectara solo al archivo pero si lo tienes anclado en todos lado afectara a todos.

Usa sesiones PHP para verificar si el usuario tiene X sesión y es igual a X sesión y si es así muestra el Cpanel.
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

Skeletron

Cita de: ‭ en  3 Marzo 2010, 19:36 PM
error_reporting(0) para evitar errores y un path disclosoure :)
Error_reporting(0); supongo que es para que no aparezcan los mensajes de error... para evitar facilitar las cosas a los chicos malos :)

pero, Path Disclosoure... Que funcionalidad tiene?

Skeletron

Cita de: ~ Yoya ~ en  3 Marzo 2010, 19:41 PM
No hagas consultas a la base de datos si no es necesario lo digo por:
Cita de: Skeletron en  3 Marzo 2010, 07:25 AM

Digamos que, cada tabla, tiene un IF, ELSEIF, ELSEIF.... en cada uno de ellos, haré un INCLUDE al que sea necesario ;)
Puedes hacer dos cosas para según tu post, puedes crear un código con el diseño de la web y cada vez que necesites el mismo diseño llamarlo, lo mejor seria crear el código del diseño en cada archivo que necesite diseño porque a la hora de editar algún archivo afectara solo al archivo pero si lo tienes anclado en todos lado afectara a todos.

Usa sesiones PHP para verificar si el usuario tiene X sesión y es igual a X sesión y si es así muestra el Cpanel.

IF, ELSEIF, ELSEIF, no es base de datos tio.. Te estas equivocando...
IF(true){
//
}ELSEIF(true){
//
}ELSEIF(true){
//
}ELSE{
//
}

~ Yoya ~

Path Disclosoure, es cuando muestra un error similar a este:
Parse error: syntax error, unexpected '}', expecting ',' or ';' in /home/yoya/Escritorio/index.php on line 3
En este caso es Full Path Disclosure porque muestra el directorio entero.
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

jdc

Nop eso es path disclosoure. En el full path disclosoure ves todos los archivos en el servidor y en el file disclosoure ves el código fuente de los archivos

~ Yoya ~

#18
http://www.owasp.org/index.php/Full_Path_Disclosure
CitarThis renders the page defunct thus spitting out an error:

Warning: opendir(Array): failed to open dir: No such file or directory in /home/omg/htdocs/index.php on line 84
Warning: pg_num_rows(): supplied argument ... in /usr/home/example/html/pie/index.php on line 131

http://0verl0ad.blogspot.com/2009/04/full-path-disclosure-fpd.html



Cita de: Skeletron en  3 Marzo 2010, 19:44 PM
Cita de: ~ Yoya ~ en  3 Marzo 2010, 19:41 PM
No hagas consultas a la base de datos si no es necesario lo digo por:
Cita de: Skeletron en  3 Marzo 2010, 07:25 AM

Digamos que, cada tabla, tiene un IF, ELSEIF, ELSEIF.... en cada uno de ellos, haré un INCLUDE al que sea necesario ;)
Puedes hacer dos cosas para según tu post, puedes crear un código con el diseño de la web y cada vez que necesites el mismo diseño llamarlo, lo mejor seria crear el código del diseño en cada archivo que necesite diseño porque a la hora de editar algún archivo afectara solo al archivo pero si lo tienes anclado en todos lado afectara a todos.

Usa sesiones PHP para verificar si el usuario tiene X sesión y es igual a X sesión y si es así muestra el Cpanel.

IF, ELSEIF, ELSEIF, no es base de datos tio.. Te estas equivocando...
IF(true){
//
}ELSEIF(true){
//
}ELSEIF(true){
//
}ELSE{
//
}

Me refiero a que no te acostumbre a hacer consultas a la BD si no es necesario porque estarías gastando recursos innecesariamente.
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

Skeletron

Pero si no estoy haciendo ninguna consulta a la database!