Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
1 / 1 / 7
Регистрация: 29.10.2012
Сообщений: 247
1

Получить по id из БД данные в массиве

28.02.2014, 14:08. Показов 690. Ответов 1
Метки нет (Все метки)

Подскажите, пжлст, как мне реализовать следующее:
Имеется БД контактов (фио, телефон и т.д.), я их вывожу с помощью input с именем phone[], в value будет id (из БД), подтверждение контакта будет на check.

Далее я получаю id контактов, на которые чекнули:
PHP
1
2
3
4
5
6
$phone = $_POST['phone'];
        
for($i=0; $i < count($phone); $i++)
{
$phone_all .= $phone[$i].",";
}
Теперь в $phone_all я имею id нужных контактов.

И теперь вопрос

Как мне получить по этим id массив данных с ФИО и другими данными?

Например:
PHP
1
2
3
$phone_all = 1,2,3 // id контактов
$phone_all_fio = "Вася,Петя,Кирилл"; // ФИО контактов по id
$phone_all_num = "555,666,777"; // Телефоны контактов по id
Добавлено через 10 минут
Пока писал, пришла мысль))) сделал так:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
    include ("lock.php");
    $phone = array();
    $phone[] = 2;
    $phone[] = 3;
    $phone[] = 4;
    $phone[] = 5;
        
    for($i=0; $i < count($phone); $i++)
    {
        $test_query = mysql_query("SELECT * FROM sms_contact WHERE sms_id='$phone[$i]'", $db);
        if(mysql_num_rows($test_query) > 0)
        {
            while($test_sql = mysql_fetch_array($test_query))
            {
                $fio_ar[] = $test_sql['sms_name'];
                $phone_ar[] = $test_sql['sms_phone'];
            }
        }
    }
    print_r($fio_ar);
    print_r($phone_ar);
?>
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.02.2014, 14:08
Ответы с готовыми решениями:

Получить данные в поле текстбокса автоматом и перенести данные с формы на лист
Добрый день. Имеется таблица -реестр. Заполняется через форму. В поле текстбокса вводится номер...

Ка вывести из БД данные в массиве, в массиве?
В теме не верно указал, вместо массива в массиве, цикл в цикле! for ($j = 1; $j &lt; 9; $j++) { ...

Tkinter. Как получить данные (поместить в какие-либо переменные) о том, какие данные находятся в виджетах
Как получить данные (поместить в какие-либо переменные) о том, какая цифра находится в текстовом...

Веб. Как изменить данные в базе по изменению данных инпута? Получить измененные данные инпута?
Доброго времени суток! Ситуация такая.. есть форма с таблицей, содержание таблицы выводится из...

1
Эксперт PHP
5167 / 3806 / 1332
Регистрация: 06.01.2011
Сообщений: 10,572
28.02.2014, 14:29 2
Не надо делать запросы к базе в цикле.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
    include ("lock.php");
    $phone = array( 2,3,4,5,6 );
    
    # Преобразуем массив в строку
    $phone = implode($phone, ","); 
    
    # Выполняем запрос
    $result = mysql_query("SELECT `sms_name`, `sms_phone` FROM `sms_contact` WHERE sms_id IN(".$phone.")", $db);
    
    # Создаём массив с данными
    while( $data = mysql_fetch_assoc($result) )
    {
        # Дописываем данные в массив
        $fio_ar[] = $data['sms_name'];
        $phone_ar[] = $data['sms_phone'];
    }
    
    print_r($fio_ar);
    print_r($phone_ar);
?>
P.S. mysql_* функции устарели, используйте mysqli.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.02.2014, 14:29

CGI. Как получить данные из html формы и отослать данные клиенту в html формате?
Господа помогите с cgi. Никогда этого не делал под VB, а сейчас очень надо. Как получить данные из...

Получить данные из формы, создать файл и вставить данные в файл
Здравствуйте. Есть форма на сайте. Я пытаюсь сделать так, чтобы данные из формы передавались в файл...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru