Mammouth du PHP |
672 Messages
11 avr. 2011, 11:50
Bonjour.
Pour vérifier si le script est accédé directement, à mettre au début du script à "protéger" :
if (realpath($_SERVER["SCRIPT_FILENAME"]) == __FILE__) {
die ('erreur');
}
__FILE__ => Le chemin complet et le nom du fichier courant. Si utilisé pour une inclusion, le nom du fichier inclus est retourné.
realpath($_SERVER["SCRIPT_FILENAME"] => Le chemin absolu vers le fichier contenant le script en cours d'exécution (celui qui fait le include(), si include).
Du coup, si tu appelles un script via une autre page, les deux diffèrent. Si tu appelles directement le script, les deux sopnt égaux => sortie.