Я делаю API для моего проекта с php и mssql (sql server).Я написал этот код, но он дает мне ошибки.Я проверил параметры и значения, но я не вижу проблемы.любая помощь будет оценена.Ошибка заключается в следующем: SQLSTATE [HY093]: недопустимый номер параметра: параметр не был определен в C: \ wamp \ www \ sarfeh \ api \ objects \ user.php в строке 40. Я выделил строку 40 в этом коде ниже.И вот что имеет $ hash: $ 2y $ 10 $ BTog4ZdjkrDsH9Hw / FjuD.myHiz61o6SOUDy4KuvoB2dGDQV9Vl4u
EDIT: Если я передаю пароль без хеширования (11111), это работает, но я,получить ошибку.
функция create () {
/
// insert query
$query = "INSERT INTO " . $this->table_name . "
(first_name,last_name,phone,password_hash)
values (:first_name,:last_name,:phone,':password')";
/$this->first_name="arassssh2";
$this->last_name="arasssh2";
$this->phone="326981";
$this->password="111111";
// prepare the query
$stmt = $this->conn->prepare($query);
// bind the values
$stmt->bindParam(':first_name', $this->first_name, PDO::PARAM_STR);
$stmt->bindParam(':last_name', $this->last_name, PDO::PARAM_STR);
$stmt->bindParam(':phone', $this->phone, PDO::PARAM_STR);
$hash = password_hash($this->password, PASSWORD_BCRYPT);
$stmt->bindParam(':password', $hash); //line 40
// execute the query, also check if query was successful
if($stmt->execute()){
return true;
}
return false;
}