PHP, CGI et HTML..

Baldriel Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
 Baldriel -
Bonjour à tous et merci de prendre votre temps à lire ce topic :)

Je suis actuellement en terminal STI2D et j'ai besoin de votre aide pour réussir une partie de mon projet informatique. (Mon prof ne sait pas non plus comment faire U_U).
Je vais vous expliquer. J'ai un serveur web dans un Raspberry PI Model B. Dedans j'ai une page index.php (normal) qui me sert de page de connexion à mon site.
Je tiens à préciser que je ne dispose que de JS, HTML, PHP, CSS et CGI me semble-t-il.
Ne disposant pas de base de donnée (contrainte) je me dois de passer par le CGI pour comparer si le mot de passe rentrée dans index.php est correct. J'ai donc pour le moment fait en sorte d'écrire le résultat dans un fichier.txt :
J'ai un exemple comme ceci :

Reçu du formulaire :Password=fjkojfosjd

Password=fjkojfosjd


Je rentre un mot de passe bidon (fjkojfosjd), qui est bel et bien capter et reconnu. Mais comment le comparer avec le vrai mot de passe (admettons que se soit root123456), et que si le mot de passe rentrer est correct, il me permet d'accéder à la page suivante nommée accueil.php ??

Merci à vous d'avoir lu, et j'espère une réponse rapide car comme tout projet, les heures sont comptées :)

Si vous voulez des informations supplémentaire sur ce que je dois ajouter, vous pouvez demander il n'y a aucuns soucis. Bonne journée !! :)

2 réponses

  1. Pitet Messages postés 2845 Statut Membre 530
     
    Salut,

    Une solution simple est de comparer le mot de passe reçu dès réception du formulaire avec le vrai mot de passe saisie directement dans le fichier php, par exemple :
    session_start();
    
    // si le mot passe envoyé n'est pas vide et est égal à secret
    if (!empty($_POST['password']) && $_POST['password'] == 'secret') {
        // on crée une variable de session pour retenir le fait que l'utilisateur est connecté
        $_SESSION['login'] = true;
        // on redirige vers accueil.php
        header('Location: accueil.php');
        exit();
    }
    


    Sur toutes les pages nécessitant que l'utilisateur soit connecté, on ajoute la vérification suivante :
    session_start();
    
    // si la varibale de session login n'existe pas ou si elle n'est pas égal à true
    if (!isset($_SESSION['login']) || !$_SESSION['login']) {
        // on redirige vers la page de connexion
        header('Location: connexion.php');
        exit();
    }
    
    // sinon on affiche la page
    
    


    Bonne journée
    2
  2. Baldriel
     
    Bonjour et merci d'avoir répondu si vite. Je veux bien tester ta solution, mais ses lignes de codes, où je les insères ? Dans index.PHP accueil.php, le CGI, un nouveau programme ? Merci de ta réponse ;)
    0