Message de Bienvenue $login PHP

Résolu
Bonsoir tous le monde !
SVP je veux intégrer un message de Bienvenue $login dans ce code d'authentification, je veux que quand mes membres s'authentifient dans la page qui suit ,en haut ça s'affiche "Bienvenue $......." que faire svp ?,voici mon code:
      <?php
include 'connect.php';
session_start();
if(isset($_POST['submit']))
{
$login = $_POST['login'];
$password = $_POST['password'];
if (isset($_POST['login']) && isset($_POST['password'])) {
    if($login&&$password)
 {
 mysql_select_db('bdd');
 
 $query = mysql_query("SELECT * FROM prof WHERE login='$login'&& password='$password'");
 $rows = mysql_num_rows($query);
 if($rows==1)
 {
 $_SESSION['login']=$login && $_SESSION['password'];
 
 header('Location:copie.php');
 
 
 }else echo '<span style="color:#EE1010;">Pseudo ou mot de passe incorrecte</span>';
 }else echo '<span style="color:#EE1010;">Veuillez saisir tous les champs</span>';
}}
?>

Merci d'avance et bonne soirée :)

EDIT : AJOUT DU LANGAGE dans les balises de code !

2 réponses

  1. Salut, faut penser à sécuriser les variables ;)

    --
    1. Modérateur
      Bonjour,

      Je constate que uu utilises toujours l'ancienne version de mysql ... et tu ne récupères pas proprement tes variables !

      En attendant ... Voici ton code corrigé :
      <?php
      //démarrage des sessions
      session_start();
      
      //connexion à la BDD
      include 'connect.php';
      mysql_select_db('bdd');
      
         
      //récupération "propre" des variables AVANT de les utiliser !
      $login = isset($_POST['login']) ? $_POST['login'] : NULL;
      $password = isset($_POST['password']) ? $_POST['password'] : NULL;
      
      
      //traitement du formulaire
      if(isset($_POST['submit'])) {
      
        if($login&&$password) {
         $sql = "SELECT * 
                    FROM prof 
                    WHERE login='$login' 
                        AND password='$password'";
         $query = mysql_query($sql);
         $rows = mysql_num_rows($query);
         if($rows==1) {
           $_SESSION['login'] = $login;
           header('Location:copie.php');
           exit();
        
         }else{
          echo '<span style="color:#EE1010;">Pseudo ou mot de passe incorrecte</span>';
         }
       }else{
         echo '<span style="color:#EE1010;">Veuillez saisir tous les champs</span>';
       }
      }
      ?>
      


      A l'avenir ... passes donc par mysqli ou pdo.
      :https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top

      .

      1. Modérateur
        Pour ce qui est du message de bienvenue ...
        vu que tu fais une redirection si l'utilisateur a réussi à se loguer ... c'est donc dans cette page
        header('Location:copie.php');
        qu'il faut mettre ton message.....
        <?php
        //démarrage des sessions
        session_start();
        
        //récupération des variables
         $login = isset($_SESSION['login']) ? $_SESSION['login'] :NULL;
        
        //si la variable existe :
         if($login){
          echo " Bienvenue $login";
         }else{
          header('Location:authentification.php'); //si pas logué .. retour à la page de connexion.
          exit();
         }
        
      2. Ok merci beaucoup pour la correction Jordane c gentil :)
        Mais le message "Bienvenue $login" je l'insère ou stp?dans la page "copie.php" ?si c le cas ou dois je le mettre stp?sachant que la deuxième page c que du html !
        Merci beaucoup :)
      3. Modérateur
        @lynda789456

        Mais le message "Bienvenue $login" je l'insère ou stp?dans la page "copie.php"

        Ben ... oui... si c'est sur cette page que tu veux le voir apparaitre ......

        ?si c le cas ou dois je le mettre stp?sachant que la deuxième page c que du html !

        Ben pour le coup... tu y mettras aussi du PHP ....
        Rien ne t'en empêche vu que le nom du fichier fini bien par .php .....
      4. En insérant ce code au début de la page "copie.php", j'arrive pas à s'authentifier :( ,et les messages d'erreurs ne s'affichent plus dans l'authentification :(
        <?php
        //démarrage des sessions
        session_start();

        //récupération des variables
        $login = isset($_SESSION['login']) ? $_SESSION['login'] :NULL;

        //si la variable existe :
        if($login){
        echo " Bienvenue $login";
        }else{
        header('Location:prof.php'); //si pas logué .. retour à la page de connexion.
        exit();
        }
      5. Modérateur
        @lynda789456Poste moi le code de tes différentes pages.
        pense à en préciser leur nom qu'on s'y retrouve.

        De plus... là je vois que tu as bêtement fait un copier/coller ... sans rien adapter.....
        Tu pourrais faire un minimum d'efforts non ?

        PS: à l'avenir... merci de préciser le LANGAGE dans les balises de code.
        Va lire ceci : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

        Puis lorsque tu posteras du code.. tu penseras à faire comme ceci :
        <code php>
        <?php
        //démarrage des sessions
        session_start();
        </code>
        Ce qui donne :
        <?php
        //démarrage des sessions
        session_start();
        


        Au lieu de simplement :

        <?php
        //démarrage des sessions
        session_start();