2015-02-24 4 views
1

С запросом POST я получаю имя кого-то, с которым я хочу связать свой идентификатор базы данных mySQL. Для этого я создаю запрос, как вы можете видеть ниже, и мне нужно поместить результат (простое число) в переменную, чтобы использовать его для других запросов.сохранить результат запроса sql в переменной php

Я знаю, что я мог бы создавать суставы с SQL, но я пытаюсь сделать это таким образом.

$owner = $_POST['owner']; 

$queryUser = "SELECT id FROM collections WHERE name = '$owner'"; 
$idUser = $mysqli->query($queryUser) or die($mysqli->error.__LINE__); 

С помощью этого кода я не могу использовать $idUser, потому что это выглядит как 0, 1 (recogniezd как массив?) Или ничего, когда я пытаюсь записать его где-то в моей базе данных. Я попытался использовать функцию intval() без результатов ...

Любая помощь?

+0

не забудьте получить результат ^^ – Djip

ответ

1

Вы должны получать в результате запроса:

$res = $mysqli->query($queryUser) or die($mysqli->error.__LINE__); 
$idUser = $res->fetch_assoc(); 

так ваш идентификатор будет $ idUser [ «ID»]

+0

я использовал 'FETCH_ASSOC()', но я не понимаю, что я должен буду использовать '$ idUser [ 'ID'] 'вместо' $ idUser'. Большое спасибо! – ahbon

+0

На самом деле, выборка отображает хорошее значение id с помощью 'echo', но у меня все еще есть 0 в моей базе данных ... – ahbon

+0

Вы выбираете id из базы данных, а ваш идентификатор результата находится в $ idUser ['id'] , Просьба уточнить, чего не хватает? – taliezin

0

Вы можете использовать fetch_array метод, который извлекает результат в виде ассоциативного массива

$query = $mysqli->query($queryUser) or die($mysqli->error.__LINE__); 

$row = $query->fetch_array(MYSQLI_ASSOC); 

echo $row['id'] 
Смежные вопросы