Problème pour sécuriser page

Fermé
Untsores Messages postés 12 Date d'inscription mardi 24 février 2015 Statut Membre Dernière intervention 28 février 2015 - 24 févr. 2015 à 16:01
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 2 mars 2015 à 16:57
Bonjour à tous !
Alors voila j'ai un petit soucis depuis 2 jours impossible à résoudre mon problème malgré les recherches sur le web ..

Mon site je le fait en 'page content' donc que vous soyez sur la page d'inscription ou l'espace membre ou n'importe ou sur votre URL ca sera toujours 'INDEX.PHP'
et ce que j'essaye de faire c'est que les personnes ne puisse pas accédez aux autres pages inscription.php / membre.php sauf si ils sont sur le index.

Je pensais à sécuriser ca en mettant par exemple dans le INDEX.PHP un mot de passe par exemple 'AZERTY123' et que si la personne modifie l'url et va su inscription.php je voudrais faire en sorte que si le mot de passe AZERTY123 n'est pas la que c'est les redirige sur INDEX.PHP.

Je pense pas du tout être clair dans ce que je veux alors n'hésiter pas pour vos questions. Merci
A voir également:

4 réponses

Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
Modifié par Pitet le 24/02/2015 à 17:06
Salut,

Une solution possible est d'utiliser une constante définie dans le fichier index.php et de vérifier au début de chaque fichier inclus si cette constante est définie.

<?php
// index.php
define('PAGE_CONTENT', 1);

include 'page2.php';



<?php
// page2.php
defined('PAGE_CONTENT') or die;

echo 'page2';



Dans l'exemple ci-dessus, je définie la constante PAGE_CONTENT dans le fichier index.php puis j'inclus le fichier page2.php.

Si j'accède directement au fichier page2.php, la vérification de la constante échoue et l'instruction die est donc lancé : le chargement de la page est interrompu et rien n'est affiché.

Bonne journée
1
Untsores Messages postés 12 Date d'inscription mardi 24 février 2015 Statut Membre Dernière intervention 28 février 2015
24 févr. 2015 à 17:55
Merci beaucoup !
mais ca ne fonctionne pas comme je veux du coup !!

je travaille avec WYSIWYG web builder je précise ..

J'ai une page Index.php et une page membre.php.

Je met le premier script sur la page index.php et le deuxième sur membre.php je vais sur mon site, le problème c'est que si je vais sur membre.php niquel rien ne s'affiche ! en revanche si je vais sur index.php rien ne s'affiche non plus !! une solution svp ?

Merci
0
Untsores Messages postés 12 Date d'inscription mardi 24 février 2015 Statut Membre Dernière intervention 28 février 2015
24 févr. 2015 à 17:20
Et bah tout simplement un grand merci à toi !
Ca fonctionne ! merci encore beaucoup ! Bonne journée
0
Untsores Messages postés 12 Date d'inscription mardi 24 février 2015 Statut Membre Dernière intervention 28 février 2015
24 févr. 2015 à 17:55
Je me suis peut être réjoui trop vite !
mais ca ne fonctionne pas comme je veux du coup !!

je travaille avec WYSIWYG web builder je précise ..

J'ai une page Index.php et une page membre.php.

Je met le premier script sur la page index.php et le deuxième sur membre.php je vais sur mon site, le problème c'est que si je vais sur membre.php niquel rien ne s'affiche ! en revanche si je vais sur index.php rien ne s'affiche non plus !! une solution svp ?

Merci
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
2 mars 2015 à 16:57
si je vais sur index.php rien ne s'affiche non plus
Si rien ne s'affiche c'est qu'il doit y avoir une erreur php. Deux solutions possible pour connaitre cette erreur (et pouvoir la corriger) :
- afficher les erreurs php (il faut modifier les directives display_errors et error_reporting dans la configuration de php ou via la fonction ini_set)
- si tes erreurs ne sont pas affichées, elles sont surement enregistrées dans un fichier error.log

As tu la possibilité de retrouver l'erreur php ?
Peux tu également nous montrer ton code ?
0