Получить все значения из одного столбца в MySQL PDO

0

У меня есть значение в user_id колонке (1,47,6). Как получить все значения?

Я использовал следующий код.

$array_data = array($project_id);               
$query = "SELECT * FROM p
    INNER JOIN pl ON p.pl_id = pl.pl_id
    INNER JOIN user ON p.user_id = user.user_id WHERE 
    p.p_id=?";
$stmt = $conn->prepare($query);
$stmt->execute($array_data);
$result_data = $stmt->fetchAll( PDO::FETCH_ASSOC );
$ids = array();         
foreach($result_data as $rows) {

    $ids[] = $rows['user_id'];                      

}
$id = implode(',',$ids);
echo $id;

Этот $id возвращает только первое значение (1). Мне нужны все 3 значения. Пожалуйста, помогите & спасибо заранее.

  • 1
    инициализировать $ids = array(); вне цикла, прямо после того, как его объявили на каждой итерации, вот идея: инициализировать снаружи, протолкнуть внутрь цикла, после этого затем взорвать снаружи
  • 0
    таблицы просто называются p и pl ?
Показать ещё 2 комментария
Теги:
pdo

1 ответ

-2

$ids массив $ids перед циклом и эхо-изображение вложенного содержимого после массива

$array_data = array($project_id);               
$query = "select 'user_id' from p
          inner join pl on p.pl_id = pl.pl_id
          inner join user on p.user_id = user.user_id where 
          p.p_id=?";


$stmt = $conn->prepare($query);
$stmt->execute($array_data);
$result_data = $stmt->fetchAll( PDO::FETCH_ASSOC );

$ids = array();  /* declare variable before loop */

foreach($result_data as $rows) {

    $ids[] = $rows['user_id'];                      

}

$id = implode(',',$ids); /* output after loop */
  • 0
    Реализовано как предложить и добавило эту строку после оператора implode echo $ id; Все еще получаю одно значение (1)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню