IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

passage de variable entre formulaire par methode POST


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 21
    Points : 15
    Points
    15
    Par défaut passage de variable entre formulaire par methode POST
    Bonjour,

    Je ne suis pas super douée en php alors j'aurai besoin d'un peu d'aide, en vue d'une épreuve de bts.

    alors voilà je veux me connecter au site en tant qu'admin, grâce à cela j'accederai à des fonctionnalités cachées. pour me connecter, j'ai une table "user", je compare si les identifiants existent dans cette table, si oui je voudrais que ca se connecte si non, message d'erreur.

    je vous mets mon code:

    - login.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    	<section id="form"><!--form-->
    		<div class="container">
    			<div class="row">
    				<div class="col-sm-4 col-sm-offset-1">
    					<div class="login-form"><!--login form-->
     
     
    	<div class="error"></div>	
     
     
    			<h2>Connexion Administrateur</h2>
    			<form name="faireConnexion" methode="post" action="Application/Vues/session.php">
                                <input type="text" name="username" />
                                <input type="password" name="password" />
     
                                <button  type="submit" name="connexion" class="btn btn-default" id="login" value="OK">Connexion</button>
                            </form>
    					</div><!--/login form-->
    				</div>
    			</div>
    		</div>
    	</section><!--/form-->
    - session.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <?php
     
                           if(!isset($_POST['faireConnexion']))
                           {
                               header("location: login.php");
                               $pseudo=$_POST['username'];
                               $password=$_POST['password'];
     
                               echo 'pseudo = '. $pseudo .' <br/>Bienvenue sur mon site !';
     
                               $reponse = gestion_boutique::verifLogin($pseudo, $password);
                               if ($reponse == $pseudo)
                               {
                                   echo 'ok';
                               }
                           }
    ?>
    - extrait de gestion_boutique.class.php (verifLogin($pseudo, $password)) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        public static function verifLogin($login, $password) {
     
            $bdd = self::seConnecter();
            $requete = $bdd ->query('SELECT username FROM user WHERE (username = "' . mysqli_real_escape_string($login) . '") AND (password = "' . mysqli_real_escape_string($password) . '")');
     
            return $requete;
        }
    Erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Not Found
    The requested URL /shop_final/Application/Vues/Application/Vues/session.php was not found on this server.
    si je change action="Application/Vues/session.php" dans le formulaire login.php par action="session.php", l'erreur devient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Not Found
    The requested URL /shop_final/session.php was not found on this server..
    modele mvc :
    Nom : Capture.PNG
Affichages : 125
Taille : 18,5 Ko

    J'ai lu tous les sujets sur les methodes post et get mais j'ai beaucoup de mal..

    Merci d'avance.

  2. #2
    Membre confirmé

    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 464
    Points : 474
    Points
    474
    Par défaut
    Bonjour,

    Déjà, stocker un mot de passe en base de données non crypté, si tu ne te fais pas allumer par ton prof, ben c'est mal

    Ensuite, ton problème n'est pas de ne pas maitriser ce qu'est une requête POST ou GET, mais comprendre l'architecture de ton site et l'hébergement qui va avec.
    Tu as une erreur 404, c'est que l'url appelée n'est pas la bonne, le fichier n'existe pas.
    Ce n'est pas le nom qui ne va pas, mais son chemin d'accès.

    Il faut que tu trouves comment accéder via ton navigateur à session.php. Une fois que tu as ça, c'est ça qu'il faut mettre dans la balise POST.
    Login.php et session.php étant au même endroit, il suffit de prendre l'url du navigateur et remplacé login par session.
    Une fois que cela marche, tu peux mettre plus propre avec une url relative.

  3. #3
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Citation Envoyé par max-mag Voir le message
    stocker un mot de passe en base de données non crypté, si tu ne te fais pas allumer par ton prof, ben c'est mal
    A lire sur le sujet Mots de passe sécurisés avec PHP 5.5
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    il existe des MILLIERS de script de connexion d'espace membre ou admin !!
    N'as-tu pas fait de RECHERCHE AVANT ?

    Quant à la vérification avec mot de passe crypté en Bdd, le principe est le suivant :

    Dans la fonction verifLogin($login, $password) :

    1- on recherche si le LOGIN existe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            $requete = $bdd->query("SELECT id_user, password FROM user WHERE username = '" . mysqli_real_escape_string($login) . "';");
    2- si le LOGIN existe (logiquement, un login est censé être UNIQUE)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    si (nombre de résultats == 1)
    on récupère le mot de passe depuis la requête précédente :
    on compare les mots de passe *
    * Si le mot de passe (enregistré en bdd) à été crypté avec password_hash, on utilise alors password_verify
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if ( password_verify( $password, $password_hash_bdd) ) {
    // alors c'est OK : login et mot de passe correspondent
    3- Si OK, return true (ou id_user **)
    ** Normalement, ici, on enregistre l'id_user dans une variable de SESSION, afin de confirmer et conserver la connexion.

    4- Si PAS OK, return false (ou 0)


    voilà un exemple de script (utilisant PDO).
    Dernière modification par Invité ; 30/05/2018 à 13h47.

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/05/2015, 14h50
  2. [AC-2007] passage de variable entre formulaire
    Par georgesasc dans le forum IHM
    Réponses: 3
    Dernier message: 24/06/2010, 12h00
  3. passage de variable entre formulaires de listes
    Par spantemonium dans le forum SharePoint
    Réponses: 4
    Dernier message: 17/07/2008, 16h22
  4. passage de variable entre formulaire
    Par b2-mk2 dans le forum VBA Access
    Réponses: 2
    Dernier message: 19/06/2007, 18h14
  5. Passage de variable par methode post ?
    Par oazar dans le forum Flash
    Réponses: 33
    Dernier message: 16/10/2003, 17h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo