0
我有兩個文件,一個包含reg_db類,在其他我調用reg_db的對象。我希望它能檢查用戶輸入和數據庫中的列,以確保它只是唯一的值。如果它不是唯一的停止代碼,並帶有消息。現在我沒有得到任何東西,var_dump($ conn - > uniqueInput($ _ POST ['reg_username'],'username
'));輸出NULL。 我希望代碼具有靈活性,並且可以設置哪個用戶輸入來檢查數據庫中的哪一列。驗證唯一的用戶名或電子郵件
//reg_db class
class reg_db{
private $input;
private $column;
public function __construct(){
}
public function uniqueInput($reg_input, $reg_column){
$this -> input = $reg_input;
$this -> column = $reg_column;
$pdo = new PDO('mysql:host=localhost;dbname=fail once again;', 'root', '');
$db_user = $pdo -> prepare('SELECT :column FROM `users` WHERE :column = :input');
$db_user -> bindParam(':input', $this -> input, PDO::PARAM_STR);
$db_user -> bindParam(':column', $this -> column, PDO::PARAM_STR);
$db_user -> execute();
$row = $db_user -> fetch(PDO::FETCH_ASSOC);
if($this -> input == $row[$this -> column]){
die($this -> column . ' ' . $this -> input . ' is already taken');
}
}
}
//object of reg_db
$conn = new reg_db();
$conn -> uniqueInput($_POST['reg_username'], '`username`');
對不起!我無法理解你準確實現的目標。請使用其他措辭。 '這是我的。這是它輸出的內容。這是我想要它輸出的。' – SteAp 2013-02-20 23:16:19
綁定':column'會引用'$ this-> column',這不是你想要的。 – 2013-02-20 23:30:06