Mysql
 sql >> Database >  >> RDS >> Mysql

Qual è l'equivalente di bind_result su PDO

Non hai affatto bisogno di un brutto bind_result con PDO.

Eppure non hai nemmeno bisogno di contare. Per favore, evita azioni non necessarie:gonfiano e offuscano solo il tuo codice senza motivo.

Pensa prima, di cosa hai bisogno dalla query? Hai davvero bisogno di contare? No. Ciò di cui hai effettivamente bisogno è solo un flag, se l'utente esiste o no. Quindi, fai una query per restituire un tale flag.

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

Lo stesso vale per tutte le altre parti del codice

//escape the POST data for added protection

In realtà non "scappa" alcun dato in questo blocco di codice e non aggiungi protezione. Eppure non vedo assolutamente alcun senso inserire NULL come e-mail. Sei sicuro di volerlo davvero?