ФорумПрограммированиеPHP для идиотов → Правильный вывод из БД

Правильный вывод из БД

  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 2 октября 2007 г. 18:13, спустя 9 минут 39 секунд

    всё, решил?
    все умрут, а я изумруд
  • pasha

    Сообщения: 1048 Репутация: N Группа: Адекваты

    Spritz 2 октября 2007 г. 18:26, спустя 12 минут 39 секунд

    Гм…хотя к чему пришел…

    Нет…не врублюсь как массив сделать…

    Получается так и все…

    (
    [2007] => Array
    (
    [0] => Новость 1
    )

    [2008] => Array
    (
    [0] => Новость 1
    )

    )


    Т.е у 2007-го 2-е новости

    [2007] => Array
    (
    [0] => Новость 1
    [1] => Новость 3
    )
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 2 октября 2007 г. 18:41, спустя 15 минут 11 секунд

    SELECT DISTINCT YEAR(`date`) AS `year`
    FROM `news`

    потом

    while ()
    {
    $year = $row['year'];
    . ..
    SELECT `id`, `…`
    FROM `news`
    WHERE YEAR(`date`)=$year

    while ()
    {
    //вот они новости этого года

    }

    }


    ИЛИ как говорит AlexB:

    SELECT `id`, `..`, YEAR('date') AS `year`
    FROM `news`
    ORDER BY `date` ASC

    $year = '';
    while ()
    {
    if ($row['year'] != $year)
    {
    // новый год!
    print $year;
    }
    // выводим новость
    }
    все умрут, а я изумруд
  • pasha

    Сообщения: 1048 Репутация: N Группа: Адекваты

    Spritz 2 октября 2007 г. 18:53, спустя 11 минут 57 секунд

    YEAR('date')

    че это значит?Обязательно так прописать?

    нельзя так?

    SELECT DISTINCT `date`AS `year` FROM `news`
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 2 октября 2007 г. 18:56, спустя 3 минуты 5 секунд

    в каком формате дата?
    все умрут, а я изумруд
  • pasha

    Сообщения: 1048 Репутация: N Группа: Адекваты

    Spritz 2 октября 2007 г. 23:44, спустя 4 часа 48 минут 5 секунд

    SELECT `id`, `..`, YEAR('date') AS `year`
    FROM `news`
    ORDER BY `date` ASC

    $year = '';
    while ()
    {
    if ($row['year'] != $year)
    {
    // новый год!
    print $year;
    }
    // выводим новость
    }


    if(!$db->query("SELECT `id`,`date`,`date` AS `year` FROM `projects` ORDER BY `date` ASC"))
    {
    die($db->error());
    }
    $year = '';
    while ($row = $db->fetchAssoc())
    {

    if ($row['year'] != $year)
    {
    print $row['year'].'<br />';
    }
    print $row['id'].'<br />';
    }


    Получается так…

    2007
    1
    2007
    3
    2008
    2

    Что не правильно…
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 3 октября 2007 г. 7:53, спустя 8 часов 8 минут 43 секунды

    $year = $row['year'];
    куда вставить догадайся
    все умрут, а я изумруд
  • pasha

    Сообщения: 1048 Репутация: N Группа: Адекваты

    Spritz 3 октября 2007 г. 9:18, спустя 1 час 25 минут 27 секунд

    Понял
  • pasha

    Сообщения: 1048 Репутация: N Группа: Адекваты

    Spritz 3 октября 2007 г. 17:02, спустя 7 часов 44 минуты 5 секунд

    Я опять с вопросом…

    Вывод у меня не тупо

    $year = '';
    while ($row = $db->fetchAssoc())
    {
    if ($row['year'] != $year)
    {
    $year = $row['year'];
    print $row['year'].'<br />';
    }

    //выводим текст

    }


    А такого вида должен быть -

    2007

    Новость 1
    __________ //<hr>

    Новость 2
    __________

    Новость 3

    Т.е попробывал что то слепить с implode так ерунда получилась…

    Так делал…
    $r[] = $row['id'];
    $imp = implode('<hr>',$r);
    print $imp;


    Глупость…

    Может есть более хитрый способ?

  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 3 октября 2007 г. 17:39, спустя 36 минут 30 секунд

    какие у нас варианты ответа?
    все умрут, а я изумруд
  • pasha

    Сообщения: 1048 Репутация: N Группа: Адекваты

    Spritz 6 октября 2007 г. 18:17, спустя 3 дня 38 минут

    Подскажет кто?Я уже #$!@#@лся
  • pasha

    Сообщения: 1048 Репутация: N Группа: Адекваты

    Spritz 17 октября 2007 г. 15:39, спустя 10 дней 21 час 22 минуты

    Эй…я так проблему и не решил…так и не кто не знает? =(
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 17 октября 2007 г. 16:31, спустя 51 минуту 54 секунды

    собственно в чем проблема?
    впадлу читать прошлые посты
    все умрут, а я изумруд
  • pasha

    Сообщения: 1048 Репутация: N Группа: Адекваты

    Spritz 18 октября 2007 г. 11:10, спустя 18 часов 38 минут 44 секунды

    Сообщение после сообщения
    Понял

    вот там мой вопрос
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 18 октября 2007 г. 11:28, спустя 18 минут 38 секунд

    какой нах имплойд?
    дай свой код текущий
    все умрут, а я изумруд

Пожалуйста, авторизуйтесь, чтобы написать комментарий!