Modérateur PHPfrance |
8758 Messages
08 août 2011, 00:14
fache toi correctement
pourquoi utiliser isset($req) alors que la variable est crée au dessus ?
mysql_num_rows n'a
rien à faire ici puisse qu'il utilise PDO !
isset($_POST) AND est totalement inutile puisque $_POST est
toujours déclarée (même si aucun formulaire n'est posté !!!!)
extract($_POST);
$pseudo = $_POST['pseudo'];
$pass = $_POST['pass'];
quel intérêt de faire deux fois la même chose !!!
$req->setFetchMode(PDO::FETCH_OBJ); // on dit qu'on veut que le résultat soit récupérable sous forme d'objet
$id = $req['id'];
cela montre clairement que l'utilisation de PDO n'est pas comprise !
Exemple de tuto sur PDO
http://www.siteduzero.com/tutoriel-3-34 ... x-bdd.html
print "$kessage "; ....
pas besoin de ", d'ou vient $kmessage ?
$pseudo = $_SESSION['pseudo'];
$pass = $_SESSION['pass'];
$id = $_SESSION['id'];
$_SESSION['connexion'] == 1;
totalement illogique vu que l'on met le pseudo en session est non l'inversion, l'affectation se fait de droite a gauche !
j'en ai profiter pour corriger les erreurs sur les chaines de caractères et le tout en fait.
a tester j'ai ptet laisser des aneriesmais il se fait tard pour moi ^^
<?php
if(!empty($_POST['login']) AND !empty($_POST['pass'])) // si les infos ont bien été envoyées
{
$req=$connexion->query('SELECT * FROM user WHERE pseudo='.$connexion->quote($_POST['pseudo'].' and pass='.$connexion->quote($_POST['pass']); // Requette MySQL
$req->setFetchMode(PDO::FETCH_OBJ); // on dit qu'on veut que le résultat soit récupérable sous forme d'objet
if ( ($req->rowCount() > 0) && ($pass == $req->pass))
// et si la requête a été effectuée ET que l'utilisateur existe ET pass ok
{
$_SESSION['pseudo'] = $_POST['pseudo'];
$_SESSION['pass']=$_POST['pass'];
$id = $_SESSION['id'];
$_SESSION['connexion'] == 1;
$message ='<p>Connexion réussie, <a href="index.php" alt="index">retourner a l\'index</a><br /></p>';
}
else //et si la requête n'a pas été effectuée ou l'utilisateur n'existe pas ou pass pas ok
{
$message = '<p>Echec de connexion, mauvais pseudo et/ou mauvais mot de passe, <a href="connexion.php" alt="connexion">se connecter</a><br /></p>';
}
$req->closecursor();
}
else //______________________________________________________si les infos n'ont pas été bien envoyées
{
$message = '<p>pseudo et/ou mot de passe non fournis, <a href="connexion.php" alt="connexion">se connecter</a><br /></p>';
}
print $message;
?>
@+
Il en faut peu pour être heureux ......