Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Warnung:PDO::exec() erwartet, dass Parameter 1 ein String ist

Wenn Sie eine Erklärung vorbereiten, müssen Sie execute statt exec und Sie müssen das Objekt verwenden, das Sie bei der Vorbereitung festgelegt haben:

$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();

Beachten Sie auch, dass rowCount() ist eine Methode, keine Eigenschaft, und Sie können sich nicht auf ihren Wert verlassen, wenn Sie ein SELECT verwenden Anfrage. Siehe Handbuchseite zu rowCount() für weitere Informationen.

Außerdem sollten Sie nicht GET, sondern POST verwenden, wenn Sie Informationen wie Passwörter senden, und Sie sollten einen gesalzenen Hash für Ihr Passwort verwenden, niemals ein Klartext-Passwort. Siehe Sicherer Hash und Salt für PHP-Passwörter für weitere Details.