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

Was ist das Äquivalent von bind_result auf PDO

Sie brauchen überhaupt kein hässliches bind_result mit PDO.

Zählen brauchst du aber auch nicht. Bitte vermeiden Sie unnötige Aktionen - sie blasen Ihren Code nur auf und verschleiern ihn ohne Grund.

Überlegen Sie zuerst, was Sie von der Abfrage brauchen? Muss man wirklich zählen? Nein. Was Sie eigentlich brauchen, ist nur ein Flag - ob Benutzer vorhanden ist oder nicht. Machen Sie also eine Abfrage, um ein solches Flag zurückzugeben.

$stmt = $this->pdo->prepare("SELECT 1 FROM users WHERE email=?");
$stmt->execute(array($_POST['email']));
$exists = $stmt->fetchColumn();

Dasselbe gilt für alle anderen Teile des Codes

//escape the POST data for added protection

Sie "escapen" eigentlich keine Daten in diesem Codeblock und fügen keinen Schutz hinzu. Dennoch sehe ich absolut keinen Sinn darin, NULL als E-Mail einzufügen. Sind Sie sicher, dass Sie es wirklich wollen?