Se connecter avec
S'enregistrer | Connectez-vous

Script php protection par mot de pass

Dernière réponse : dans Programmation

Bonjour à tous,

Je cherche un petit code php ( à insérer sur ma page boutique.php) un minimum sécurisé afin de protéger l'accès à une boutique par un mot de passe donné aux clients (pas de login).

Ex: www.monsite.fr/boutique.php =>ici un champ text avec demande de mdp
www.monsite.fr/boutique2/index.php => ici la page de redirection après avoir entré le bon mdp

J'ai essayé les fichiers .htaccess mais je ne capte rien et dans les tutos c'est avec login/mot de pass donc j'aimerai un truc simple si possible.
J'ai essayé le javascript mais je trouve vraiment trop facile de trouver le mdp (code source)

Un petit script en php ?

Merci de votre aide

Matthieu

Autres pages sur : script php protection mot pass

Lassé par la pub ? Créez un compte
Expert Programmation

ben en gros tu fais un formulaire avec un seul champ (mot_de_passe) dans un page et a la soumission tu contrôle que

$_POST["mot_de_passe"] = "ton mot de passe"

si oui, alors tu redirige vers un page sinon tu affiches un mesage et tu renvoies sur la page de login.


le gros probleme et que le mot de passe est le meme pour tous. si tu veux le changer (a cause d'UNE personne) tu devra informer TOUS les autres du chgt de mot de passe.


the_down a dit :
ben en gros tu fais un formulaire avec un seul champ (mot_de_passe) dans un page et a la soumission tu contrôle que

$_POST["mot_de_passe"] = "ton mot de passe"

si oui, alors tu redirige vers un page sinon tu affiches un mesage et tu renvoies sur la page de login.


le gros probleme et que le mot de passe est le meme pour tous. si tu veux le changer (a cause d'UNE personne) tu devra informer TOUS les autres du chgt de mot de passe.




Merci !

Ce n'est pas grave car le code n'est valable que quelques semaines, aprés je le change...

As tu un petit code car je ne pour mon formulaire ?
Est-ce que le mot de passe choisit peut etre trouvé facilement par d'autres personnes ?


Expert Programmation

Bonjour,

Oui c'est très simple...

Formulaire:
  1. <form method="post" action="page_protegee.php">
  2. <input type="password" name="pass" />
  3. <input type="submit" value="Envoyer" />
  4. </form>


page_protegee.php
  1. <?php
  2. if ($_POST['pass'] == "toto") {
  3. echo "bon mot de passe";
  4. } else {
  5. echo "mauvais mot de passe";
  6. }
  7. ?>

allstar27 a dit :
Bonjour,

Oui c'est très simple...

Formulaire:
  1. <form method="post" action="page_protegee.php">
  2. <input type="password" name="pass" />
  3. <input type="submit" value="Envoyer" />
  4. </form>


page_protegee.php
  1. <?php
  2. if ($_POST['pass'] == "toto") {
  3. echo "bon mot de passe";
  4. } else {
  5. echo "mauvais mot de passe";
  6. }
  7. ?>



Merci Beaucoup allstar27 !

Cela fonctionne mais le problème est que même avec un mauvais mot de passe on accède à la page protégé !!

Une idée ?

Merci

voici le code de ma page "Home" qui doit etre protégé

  1. <?php
  2. if ($_POST['pass'] == "toto11" ) {
  3. echo "bon mot de passe";
  4. } else {
  5. echo "mauvais mot de passe";
  6. }
  7. ?>
  8. <?php
  9.  
  10. include(dirname(__FILE__).'/config/config.inc.php');
  11.  
  12. if(intval(Configuration::get('PS_REWRITING_SETTINGS')) === 1)
  13. $rewrited_url = __PS_BASE_URI__;
  14.  
  15. include(dirname(__FILE__).'/header.php');
  16.  
  17. $smarty->assign('HOOK_HOME', Module::hookExec('home'));
  18. $smarty->display(_PS_THEME_DIR_.'index.tpl');
  19.  
  20. include(dirname(__FILE__).'/footer.php');
  21.  
  22. ?>

Expert Programmation

  1. <?php
  2. if ($_POST['pass'] == "toto11" ) {
  3. include(dirname(__FILE__).'/config/config.inc.php');
  4. if(intval(Configuration::get('PS_REWRITING_SETTINGS')) === 1)
  5. $rewrited_url = __PS_BASE_URI__;
  6. include(dirname(__FILE__).'/header.php');
  7. $smarty->assign('HOOK_HOME', Module::hookExec('home'));
  8. $smarty->display(_PS_THEME_DIR_.'index.tpl');
  9. include(dirname(__FILE__).'/footer.php');
  10. }
  11. ?>

J'ai un soucis :

J'ai vraiment besoin d'un mot de pass du type "HG67TY" et avec les majuscule ce script ne fonctionne pas... j'ai test avec hg67ty et ça marche !

Quel modif dois-je faire pour pouvoir utiliser les majuscules ?

Merci, c'est ma dernière question après j'arrête de vous emm......
:) 
Expert Programmation

matthieu7575 a dit :
Merci, ça marche !!

Si je peux me permettre une dernière question :

Quand on tape un mauvais mot de passe ma page "Home" est blanche... comment la remplacer par la page de log ?

Merci encore OmaR et les autres !


Tu peux faire une redirection si tu veux en ajoutant un else. Pour la redirection c'est header.
Ca m'étonnerait que le script ne fonctionne pas avec des majuscules sinon :) 

Je suis pas trop d'accord avec toi, allstar27, dans la mesure où ton code fait passer la chaine de caractères en majuscules, ce qui signifie que l'on peut rentrer indifféremment les caractères en majuscules / minuscules...

Genre "Hg67ty" ou "HG67tY" seront autorisés... Maintenant c'est peut-être ce que recherche matthieu...

Et bien d'accord avec OmaR :

Si tu fais
  1. if ( $pass == "HG67TY" ) {
  2. ...


Cela ne revient pas à avoir :
  1. if ( ( $pass == "HG67TY" ) || ( $pass == "hg67ty" ) ) {
  2. ...


Enfin bref... tout dépend de ton besoin après...
Lassé par la pub ? Créez un compte
Tom's guide dans le monde