Mysql запрос

Тема в разделе "SQL", создана пользователем max787, 27 авг 2007.

  1. max787

    max787 Гость

    Подскажите пожалуйста.
    У меня в таблице mysql есть столбец с форматом datatime и названием data. Таблица называется plan (id,name, data, user).

    Когда в запросе в mysql или в php я пишу select * from plan; Выводится вся информация таблицы.

    Но мне надо вывести datatime в виде числа, месяца, года, часов и минут, без секунд! Для этого использую DATE_FORMAT(data,'%d

    %m %Y %H %i').

    т.е когда в mysql ввожу запрос:
    select id, name, DATE_FORMAT(data,'%d %m %Y %H %i'), user from plan; все выводится нормально.



    НО через php не получается.
    Создаю запрос:

    $query = "select id, name, DATE_FORMAT(data,'%d %m %Y %H %i'), user from plan";
    $result = mysql_query($query);
    $num_results = mysql_num_rows($result);

    for ($i=0; $i <$num_results; $i++){
    $row = mysql_fetch_array($result);

    echo '<tr>';
    echo '<td>';
    echo stripslashes($row['id']);
    echo '</td>';

    echo '<td>';
    echo stripslashes($row['name']);
    echo '</td>';

    echo '<td>';
    echo stripslashes($row['data']);
    echo '</td>';

    echo '<td>';
    echo stripslashes($row['user']);
    echo '</td>';
    echo '</tr>';

    }

    Выводятся все массивы кроме data, там поле в таблице пустое.
    Что с этим можно зделать?
    Почему Mysql все выводит прекрасно, а php не может?
     
  2. Maniacosaur

    Maniacosaur Гость

    Дело в том, что когда ты применяешь в запросе функцию форматирования даты, то поле в результате выполнения запроса уже не data.
    Т.е. пиши сначала
    $query = "select id, name, DATE_FORMAT(data,'%d %m %Y %H %i') as data_, user from plan";

    а затем
    echo '<td>';
    echo stripslashes($row['data_']);
    echo '</td>';


    ЗЫ: Все чисто логические умозаключения, поскольку с MySQL и PHP практически не работал, за то дохрена работал с MS SQL
     
  3. max787

    max787 Гость


    Спасибо. Работает
     
Загрузка...

Поделиться этой страницей