@lemonlimelike

Как достать поле из бд?

Есть запрос
$stz = $pdo->prepare("SELECT COUNT(*) FROM reg WHERE login=:login AND password=:passwd");
	$stz->bindParam(':login', $login);
	$stz->bindParam(':passwd', $passwd);
	$stz->execute();
	$found = $stz->fetchColumn();


Есть еще один
$stx = $pdo->prepare("SELECT user_id FROM reg WHERE login=:login AND password=:passwd");
	$stx->bindParam(':login', $login);
	$stx->bindParam(':passwd',$passwd);
	$stx->execute();
	$dhs = $stx->fetchColumn();

Можно обойтись один запрос? Запросы почти что одинаковы, в них только изменяется, то что ищет запрос, ну вроде в запросах все понятно. А как обойтись одним запросом? И как достать из запроса то что тебе нужно, допустим нужно кол-во полей user_id в одной проверке, а coun(*) в другой.
  • Вопрос задан
  • 180 просмотров
Решения вопроса 1
@Artem0071
Безработный mr. Junior
function get_from_db($name){
  $stx = $pdo->prepare("SELECT {$name} FROM reg WHERE login=:login AND password=:passwd");
  $stx->bindParam(':login', $login);
  $stx->bindParam(':passwd',$passwd);
  $stx->execute();
  return $stx->fetchColumn();
}

$user_id = get_from_db('user_id');
$count = get_from_db('COUNT(*)')
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Вопрос - сколько у вас в базе может быть пользователей с одинаковой парой логин/пароль?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы