Prob PHP

Bonjour,
Voila j'ai fais un formulaire en php et je dois tester si ce que l'utilisateur a entre est correcte en comparant avec un nom par ex shreek j'ai essaie deux facon soit = ou == cest a dire:
if $nom=shreek
echo "good"
if $nom==shreek
............
DONC VOILA SI KELKUN conai la differnce en = et ==
je le remercie davance
Configuration: Windows XP
Internet Explorer 7.0

8 réponses

  1. Salut,
    un = c'est pour l'afectation de valeur :
    $mavariable = "shrek";

    et les == c'est pour les conditions
    if($mavariable == "shrek")
    {...
    }
    else
    {...
    }

    si tu met un = dans une condition, elle marchera aléatoirement.
    1. "=" signifie l'affectation
      "==" signifie la valeur d'égalité

      Il te manque un ";" à la fin de ton echo et les accolades ne sont pas présentes non plus ;) !
      1. OK merci mais le prob c'est que j'ai plusierus if ds mon code
        dans un si je met = sa marche et ds l'autre si je met que = sa marche pas je dois obligatoiremnt mettre ==
        Sa depend defois
        Je c pas pourquoi
        ??????????????????????????
        1. tu dois mettre == dans les conditions !
          Tu dois avoirs d'autre erreur ailleur et par chance un = te résolu ton problème. Mais cherche ton erreur c'est bien plus fiable
          1. REGARDE MON CODE:
            $a=mysql_query("SELECT Login FROM identification WHERE Login='$login'"); //Requete concernant le login{
            $a1=mysql_fetch_object($a);
            $verif_login=($a1->Login);

            $c=mysql_query("SELECT Mot_de_passe FROM identification WHERE Login='$login'"); //Requete concernant le mdp
            $c1= mysql_fetch_object($c);
            $verif_mdp=($c1->Mot_de_passe);

            $d=mysql_query("SELECT Niveaux_acces FROM identification WHERE Login='$login'"); //Requete concernant le niveaux d'acces
            $yy=mysql_fetch_object($d);
            $verif_niveaux_acces=($yy->Niveaux_acces);
            $_SESSION['Niveau__acces']=$verif_niveaux_acces; //Enregistrement de la variable dans une session pour la transférer vers une autre page

            $e=mysql_query("SELECT Login FROM identification WHERE Login='$login' AND Niveaux_acces='1'"); //Requete concernant le login qd niveaux d'acces=1
            $e1=mysql_fetch_object($e);
            $verif_login_qd_niveau_acces_est1=($e1->Login);

            $f=mysql_query("SELECT Mot_de_passe FROM identification WHERE Login='$login' AND Niveaux_acces='1'");//Requete concernant le mdp qd niveaux_acces=1
            $f1=mysql_fetch_object($f);
            $verif_mdp_qd_niveau_acces_est1=($f1->Mot_de_passe);

            echo '<p><input type="submit" id="submit" name="submit" value="IDENTIFICATION" /></p>'."\n";
            if (isset($_POST['submit']))
            {
            if (($login==$verif_login) AND ($mdp==$verif_mdp))//
            {
            //ICI EST LE PROB SI JMET == SA MARCHE PAS
            if (($login=$verif_login_qd_niveau_acces_est1) AND ($mdp=verif_mdp_qd_niveau_acces_est1)){
            echo '<a href="http://127.0.0.1/site_internet/;;;;;;;;;;;;
            1. Tu te complique la vie a utilisé mysql_fetch_object
              utilise un mysql_fetch_array() et tu recupère toutes tes données en une requete !

              et là grosse faute je croi !! pas de and dans les condition on met des &&
              if (($login=$verif_login_qd_niveau_acces_est1) && ($mdp=verif_mdp_qd_niveau_acces_est1))
              1. POUR LES AND SA MARCHE TRES BIEN COM LES &&
                Mai tu pe me rexpliquer pour fectch array jfe commen??????
                1. En fait tu met les résultat de ta requête dans un tableau :

                  $result = mysql_query("SELECT id, name FROM mytable");
                  while ($row = mysql_fetch_array($result))
                  {
                  print($row[0].$row[1]);
                  }

                  ?>
                  $row[0] ==> correspond à id
                  $row[1] ==> correspond à name
                  et ainsi de suite !