PHP, CGI et HTML..

Fermé
Baldriel Messages postés 2 Date d'inscription jeudi 4 février 2016 Statut Membre Dernière intervention 10 mars 2016 - Modifié par Baldriel le 4/02/2016 à 11:54
 Baldriel - 5 févr. 2016 à 19:39
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 !! :)
A voir également:

2 réponses

Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
5 févr. 2016 à 11:57
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
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