DATE_ADD проблема

0

Я работаю над добавлением 1 месяца к дате() и сохраняю его в своем поле в базе данных.

Я использую этот

$query2 = "SELECT * ,DATE_ADD(`date_joined`,INTERVAL 30 DAY) AS expire FROM `set` WHERE ID='$idno'";
$result2 = mysql_query($query2);

"expire" - это поле, которое я хочу сохранить как +30 дней. date_joined - текущая дата.

но это не сработает. поле expire все еще текущая дата нет сообщения об ошибке.

что мне делать?

или есть ли другой способ добавить 30 дней к текущей дате и сохранить его как поле "expire"?

Спасибо

  • 0
    Почему не включая почему не работает как например сообщение об ошибке из базы данных?
  • 0
    Потому что нет сообщения об ошибке
Показать ещё 3 комментария
Теги:

2 ответа

5
Лучший ответ

У вас отсутствует запятая между звездочкой и вызовом DATE_ADD. Он должен выглядеть следующим образом:

SELECT  *,
        DATE_ADD(`date_joined`, INTERVAL 30 DAY) AS expire 
FROM    `set` 
WHERE   ID='$idno'

Как только вы исправите это, запрос выглядит хорошо сформированным.

Изменить: Похоже, вам нужен оператор update, а не оператор select. Попробуйте:

update `set`
set    `expire` = date_add(`date_joined`, interval 30 day)
where  `id` = '$idno'
  • 0
    пробовал, не работал, поле expire остается текущей датой
  • 0
    Является ли date_joined полем типа date или datetime ?
Показать ещё 6 комментариев
1

Вам понадобится update.

UPDATE `set` SET expire = DATE_ADD(date_joined, INTERVAL 30 DAY)
WHERE ID='$idno'
  • 0
    THX, пытался, но поле истекает сейчас 0000-00-00
  • 0
    Одиночные кавычки вокруг date_joined должны быть date_joined .
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню