Mysql
 sql >> Base de données >  >> RDS >> Mysql

Avertissement :PDO::exec() s'attend à ce que le paramètre 1 soit une chaîne

Lorsque vous préparez une déclaration, vous devez execute au lieu de exec et vous devez utiliser l'objet que vous avez défini lors de sa préparation :

$req=$idconnex->prepare("SELECT * FROM `enseignant` WHERE ens_cin=:cin AND ens_pass=:pass");
$req->bindParam(':cin',$_GET["login"]);
$req->bindParam(':pass',$_GET["password"]);
$req->execute();

Notez également que rowCount() est une méthode, pas une propriété, et vous ne pouvez pas vous fier à sa valeur lorsque vous utilisez un SELECT requête. Voir la page de manuel sur rowCount() pour plus d'informations.

De plus, vous ne devez pas utiliser GET mais POST lorsque vous envoyez des informations telles que des mots de passe et vous devez utiliser un hachage salé pour votre mot de passe, jamais un mot de passe en texte brut. Voir Hachage sécurisé et sel pour les mots de passe PHP pour plus de détails.