[php] vérifier qu'une page à bien été "include"

vérifier qu'une page à bien été "include" [php] - PHP - Programmation

Marsh Posté le 14-01-2010 à 13:17:57    

Bonjour, comment vérifier qu'une page à bien été "include" par une autre ?
 
J'ai une page html, qui en fonction d'un paramètre passe dans l'url (index.php?action=liste ...) inclut les headers / contenu / template / footer etc...
 
La page de contenu est une page php et je voudrai éviter qu'un utilisateur ne puisse l'executer directement (si il trouve son nom dans le dossier /Includes) par exemple ...
 
Au début je pensais mettre une variable à 1 dans le index.php et tester la variable dans l'include, mais ça ne me parait pas très fiable / sécurisé ...
 
donc est ce qu'il existe une fonction pour faire ca ??
 
merci !


---------------
Gamertag : Getget94 - PSN : Getget1980 - Nintendo Network : Getget1980 - Uplau : Getget1980
Reply

Marsh Posté le 14-01-2010 à 13:17:57   

Reply

Marsh Posté le 14-01-2010 à 13:56:36    

t'as jamais entendu parler des htaccess :??:


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 14-01-2010 à 13:56:48    

Il n'y a pas de fonction toute prête (en tout cas je n'en connais pas  :o )
 
...Mais :
- La constante __FILE__ contient le nom du fichier courant.
- La variable  $_SERVER['SCRIPT_FILENAME'] contient le nom du script appelant.
 
Si les deux valeurs sont égales, c'est qu'on a appelé directement le script.
 
Avec ça, tu as moyen de construire une fonction à appeler au début de chaque fichier que tu veux "protéger".
 
Pense aussi à interdire l'accès au répertoire "include/" avec un .htaccess.

Reply

Marsh Posté le 14-01-2010 à 14:26:53    

avec htaccess, t'empêche d'appeler un script directement : c'est bien ce qu'il veut, donc pas besoin de faire du code en + qui va servir à rien :/


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 14-01-2010 à 14:46:50    

J'ai déjà interdit le listing des sous dossiers avec un htaccess.
 
Je savais pas qu'on pouvait interdire l'exécution des scripts ... je vais jeter un oeil.


---------------
Gamertag : Getget94 - PSN : Getget1980 - Nintendo Network : Getget1980 - Uplau : Getget1980
Reply

Marsh Posté le 14-01-2010 à 14:51:43    

après, y'a sans doute aussi des solutions avec la conf d'apache...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 14-01-2010 à 15:18:15    

ouai tu peux interdire d'exécuter un fichier dans un dossier

 

un ptit htaccess avec juste  : Deny from all

 

fera l'affaire


Message édité par stealth35 le 14-01-2010 à 15:21:07
Reply

Marsh Posté le 15-01-2010 à 08:19:11    

Je n'ai pas accès à la conf d'apache ;)
 
Le htaccess est valable pour le dossier et tous les sous dossier, c'est bien ca ?


---------------
Gamertag : Getget94 - PSN : Getget1980 - Nintendo Network : Getget1980 - Uplau : Getget1980
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed