Bonjour,
je suis débutant en PEAR, je suis en train de faire une application. Voilà mon problème concernant le login:
J'ai le code:
Ca marche bien, mais si on fait ca, il faut faire 2 fois la requête. J'ai donc décidé de changer à:
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 $numrows = $db->getOne("SELECT count(id) FROM clients WHERE login=upper('$login') AND password=upper('$pass')"); if ($numrows=="1") { $query = "SELECT id FROM clients WHERE login=upper('$login') AND password=upper('$pass')"; $rsc = $db->query($query); if (DB::isError($rsc))die("erreur SQL lors de la recherche de l'utilisateur<br>"); $rsc->fetchInto($result); session_register("authentification"); $_SESSION['id_user'] = $result[0]; header("Location:./client/login/frame.php"); } else { header("Location: index.php?erreur=login"); }
Mais je peux logger meme si le login et pass sont faux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 $query = "SELECT * FROM clients WHERE login=upper('$login') AND password=upper('$pass')"; $rsc = $db->query($query); if (DB::isError($rsc)) die("erreur SQL lors de la recherche de l'utilisateur<br>"); if ($rsc->numRows()) { $rsc->fetchInto($result); session_register("authentification"); $_SESSION['id_user'] = $result[0]; header("Location:./client/login/frame.php"); } else { header("Location: index.php?erreur=login"); }
J'ai également essayer: count($rsc), count($rsc) == 1, count($rsc) =="1", $rsc->numRows() == 1, $rsc->numRows() == "1". Ca marche toujours pas, soit je ne peux pas logger, soit je log dans tous les cas.
Pouvez vous m'aider?
Partager