За последние 24 часа нас посетил 20091 программист и 1656 роботов. Сейчас ищут 1788 программистов ...

Выборка из базы данных

Тема в разделе "PHP и базы данных", создана пользователем lingvo, 20 ноя 2014.

  1. lingvo

    lingvo Новичок

    С нами с:
    16 ноя 2014
    Сообщения:
    3
    Симпатии:
    0
    Добрый день.
    У меня есть две таблицы, dle_vote и dle_vote_result. Они имеют такую структуру
    dle_vote_result - id, vote_id (ид вопроса), name (имя проголосовавшего), answer (номер варианта ответа).
    dle_vote - id (ид вопроса), title (название опроса), body (содержит, варианты ответа на вопрос)
    Мне нужно вывести на сайте, кто и за какой вариант ответа проголосовал, в зависимости от вопроса.
    Т.е например у меня есть два опроса - Как дела? и Как Погода?
    Мне нужно чтобы на сайте вывело
    Как дела?
    lingvo - 1 (можно и вариант ответа) либо нормально
    test - 2 либо отлично
    И т.д.
    Как Погода?
    lingvo - 0 (можно и вариант ответа) либо плохо
    test - 1 либо сойдет
    И т.д

    Пока пришел к такому виду, он выводит всех пользователей по всем опросам (исключая гостей).
    На данный момент имеет вот такой вид
    2 (id вопроса) lingvo (ник пользователя) - 0 (выбранный вариант ответа), 2test - 1, 1lingvo - 1, 1test - 2,

    Код (PHP):
    1. <?php
    2. $result = $db->query("SELECT DISTINCT `vote_id`, `answer` , `name`  FROM `". PREFIX ."_vote_result` ORDER BY `vote_id` DESC");
    3. $row = @mysql_fetch_array($result);
    4.  
    5. while ($row = $db->get_row()) {
    6. if ($row['name'] != 'guest'){
    7.   echo "".$row['vote_id'] ;
    8.   echo "<a href='/user/".$row['name']."'>".$row['name']."</a>".$row['title']." - ".$row['answer'].", ";}
    9.   }
    10. ?>
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    отлично
    прекрасно. мороз и солнце.

    больше вопросов что-то не вижу. что вас тревожит-то?
     
  3. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.119
    Симпатии:
    1.245
    Адрес:
    там-сям
    lingvo, ты знаешь про JOIN таблиц? объедини обе таблицы в одном SQL запросе, сделай нужную тебе сортировку. затем уже в PHP немного поколдуй с форматированием вывода и всё!

    подсказка на $100:
    Код (PHP):
    1. if ($question != $prev_question) {
    2.   // ... вывод заголовка…
    3.   $prev_question = $question;
    4. } 
     
  4. lingvo

    lingvo Новичок

    С нами с:
    16 ноя 2014
    Сообщения:
    3
    Симпатии:
    0
    Тему можно закрыть, проблема решена. Всем больше спасибо