[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как получить несколько значений из таблицы?
Dimaz
Еще раз приветствую всех. Вопрос такой. С клиента приходит массив, содержащий несколько значений. Например 1,2. Как можно достать из базы данных значения поля name_test, где test_id равны 1 и 2. Т.е. мне нужно получить сразу несколько значений.
user posted image
if($tests){
$m_query = mysql_query("SELECT * FROM `cabinet` WHERE `test_id` = '". $tests ."'");
while($row = mysql_fetch_array($m_query, MYSQL_ASSOC)) {
$arr2[] = array('name_test' => $row['name_test']);
}
echo json_encode($arr2);
}

Так естественно не работает. Как нужно правильно?
SoMeOnE
Можно двойное условие
WHERE `test_id` = '1' OR `test_id` = '2'

А можно $tests назначить массивом и сравнивать с если в массиве такое значение.
$tests = array(1,2);
WHERE test_id IN ($tests)
Dimaz
Ничего не понял unsure.gif Если с клиента приходит 1,2 мне нужно из базы достать Второй тест, Третий тест и отправить их обратно клиенту. Короче говоря мне нужно получить названия тестов по их идентификаторам.
rooor
$tests = array(1,2);
$m_query = mysql_query("SELECT `name_test` FROM `cabinet` WHERE `test_id` IN(". implode($tests, ',').")") or die(mysql_error());
while($row = mysql_fetch_assoc($m_query))
{
$arr2[]['name_test'] = $row['name_test'];
}
print_r($arr2);
Dimaz
Спасибо. А если приходит $tests = $_POST['tests'];. Его нужно в массив преобразовать?
С клиента приходит обычный javascript массив var tests = [1,2];
rooor
да, в массив
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.