Я пытаюсь создать код многократного использования в PDO.PDO: создание многоразового кода
вот мой код.
$myClass = new main_c();
$condition = "email_address = :email_address AND password = :password";
$array = array('email_address' => '[email protected]', 'password' => '98467a817e2ff8c8377c1bf085da7138');
$row = $myClass->get('user', $condition, $array, $db);
print_r($row);
Это моя функция.
public function get($tablename, $condition, $array, $db){
$stmt = $db->prepare("SELECT * FROM $tablename WHERE $condition");
foreach($array as $k=>$v){
$stmt->bindParam(":$k", $v);
}
try{
$stmt->execute();
}catch(PDOException $e){
$error = new main_c();
echo $error->error_handling($e);
}
return $row=$stmt->fetch(PDO::FETCH_ASSOC);
}
Я попытался опуская AND
в состоянии и просто поставить один пункт, где и работал. Я думаю, что есть проблема в foreach. Я не уверен, хотя.
Любые ошибки? Какой окончательный запрос вы получите? Я бы опустил параметр '$ db', так как это должно быть какая-то переменная, созданная при инициализации. Включить подсказки типа для атрибутов – Justinas
@ Justinas ошибок пока нет. Sir jeroen правильная необходимость изменить bindParam на bindValue. –