Php

Fermé
manel - 10 déc. 2015 à 21:38
 Utilisateur anonyme - 10 déc. 2015 à 23:24
Bonjour,
je vous tester si un etudiant existe dans la base de donnée ou non voila mon code:


<?php
// On démarre la session
session_start();
$loginOK = false;

$link = mysqli_connect("localhost", "root", "", "pw");

$nom =$_GET["nom"];
$pw =$_GET["pw"];

$sql=mysqli_query($link,"SELECT * FROM etudiant");

while ($row = mysqli_fetch_row($sql)){

if(($nom==$row[2])&&($pw==$row[7])){

$loginOK =true;
break;
}}




//tst
if ($loginOK=true) {
?>
<script language="javascript">;
alert("Bravo!");
//window.location.href="site-etudiant.php";
</script>;
<?php

else {
?>
<script language="javascript">;
alert("Mot de passe incorrect");
//window.location.href="etudiant.php";
</script>;
<?php

}}
?>
donc comme ça normalment lorsque le mot de passe est incorrecte ça affiche ("mot de passe incorrect ")mais ça ne fonction pas je ne suis pas sure
Svpppp aidez moi
MErci bccccp


A voir également:

1 réponse

Bonjour

if ($loginOK=true) 

Ce test est toujours vrai, vu que = est une affectation en PHP. Pour faire la comparaison, il faut utiliser ==.

Remarque : puisque if (condition) teste si une condition est vraie, il est inutile décrire if (condition == true).

Surtout, tu devrais utiliser un WHERE pour ne sortir que les "bonnes" lignes de ta table au lieu de toute la lire et de faire la comparaison en PHP

SELECT * FROM etudiant WHERE nom='$nom' AND mdp = '$pw'

(si tes champs s'appellent nom et mdp)
0