Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.11.2012, 23:36   #1
Programmer_St
Пользователь
 
Регистрация: 23.04.2012
Сообщений: 43
По умолчанию Работаю с датой.

Такой вопрос у меня в таблице есть поле DATA_R и есть поле названий групп NAME_GR, так вот мне нужно вывести даты которые равны сегодняшней дате, далее завтрашней и далее отсортировать записи оставшиеся Которые идут после ЗАВТРАШНЕЙ ДАТЫ а после до.
короче сделать некий цикл.
Проблема состоит в том что я не могу сравнить даты например сегодня и дату из поля бд.
Programmer_St вне форума Ответить с цитированием
Старый 20.11.2012, 00:13   #2
Programmer_St
Пользователь
 
Регистрация: 23.04.2012
Сообщений: 43
По умолчанию

Вот скриптик я сдеал но он почему то не выводит ничего
<?php
$current_date = date("Y-m-d");
$sql_gr1=mysql_query("SELECT * FROM event WHERE id_group=$id AND `data`=$current_date" );




while($res=mysql_fetch_array($sql_g r1)){


printf('<li>
<span class="today">Сегодня</span>
<a href="#">'.$res['name_event'].'</a>
<a href="#" class="link-remove">удалить</a>
</li>');


};




?>
запись точно есть в бд.

Последний раз редактировалось Programmer_St; 20.11.2012 в 00:17. Причина: ошибся
Programmer_St вне форума Ответить с цитированием
Старый 20.11.2012, 08:11   #3
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,158
По умолчанию

добавляем кавычки - ибо дата - строка
Код:
"SELECT * FROM event WHERE id_group=$id AND `data`='$current_date'"
ADSoft вне форума Ответить с цитированием
Старый 20.11.2012, 13:34   #4
Programmer_St
Пользователь
 
Регистрация: 23.04.2012
Сообщений: 43
По умолчанию

Спасибо! очень выручил!
Programmer_St вне форума Ответить с цитированием
Старый 21.11.2012, 00:48   #5
Programmer_St
Пользователь
 
Регистрация: 23.04.2012
Сообщений: 43
По умолчанию

Вот еще вопрос
$current_date = date("Y-m-d");
$sql_gr1=mysql_query("SELECT * FROM event WHERE `data`='$current_date' AND id_group=$id " );
нужно поправить так чтобы не учитывался год `data`='$current_date' .
то есть сравнить только месяц и день.
Programmer_St вне форума Ответить с цитированием
Старый 21.11.2012, 01:15   #6
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Можно вместо $current_date сделать $current_date = date("m-d");
Далее сравнивать либо через LIKE '%'.$current_date, либо с помощью операторов сравнения для дат, убрав год из даты
motorway вне форума Ответить с цитированием
Старый 21.11.2012, 01:25   #7
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Вот так можно:
Код:
$day=date('d');
$month=date('m');
$result=mysql_query("SELECT * FROM `event` WHERE Month(`data`) = '$month' AND Day(`data`)='$day' AND id_group=$id");
motorway вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работаю с MS express Mysql и C# Programmer_St Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 3 20.10.2012 17:58
отсутствует взаимосвязь между датой поступления товара и датой отгрузки Forget Microsoft Office Access 0 13.02.2011 14:10
работаю удалённо GIO Фриланс 3 08.03.2008 07:31
Пишу на php, работаю удаленно. crazy.coder.ua Фриланс 1 17.12.2007 14:06