自從5.1版本,PHP是隨PDO驅動程序,它給出了準備語句的類。
$dbh = new PDO("mysql:host=$hostname;dbname=$db", $username, $password); //connect to the database
//each :keyword represents a parameter or value to be bound later
$query= $dbh->prepare('SELECT * FROM users WHERE id = :id AND password = :pass');
# Variables are set here.
$query->bindParam(':id', $id); // this is a pass by reference
$query->bindValue(':pass', $pass); // this is a pass by value
$query->execute(); // query is run
// to get all the data at once
$res = $query->fetchall();
print_r($res);
看到PDO driver at php.net
注意,當您使用binbParam或bindValue這種方式(預處理語句)將自動逃避一切必要而且是執行mysql的查詢,最安全的方法之一,只要。
還有mysqli擴展名執行類似任務,但我個人發現PDO更清潔。
整個過程如何,並且使用所有這些步驟給您提供的解決方案可能比任何其他PHP解決方案都要好。
然後,您可以使用$query->fetchobject作爲對象檢索您的數據。