Forum Webscript.Ru
Программирование => PHP => Тема начата: a@mail.dux.ru от 23 Декабря 2002, 18:14:42
-
Задача такова:
есть база данных там два столбца с данными типа дата.
допустим data1 и data2
при обновлении через пхп скрипт надо к data1 прибавить месяц и один день и записать в data2
(в аспе знал такую функцию dataadd но php ничего подобного не нашел)
Как это сделать?
Спасибо
-
РНР тут не нужен.
update table set date1=date_add(date1, interval 1 day)
в php сложением дат занимается функция mktime
пример см в описании функции date
-
RomikChef
а не вот так? :
update table set date2=date_add(date1, interval 1 day)
update table set date2=date_add(date1, interval 1 month)
-
да нет, одним запросом все равно
update table set date2=date_add(date_add(date1, interval 1 day), interval 1 month)
а может, как-то еще можно
там столько функций для работы с датой...
-
ух ты, здорово! Спасибо.
сделал вот так : date_add((date_add(CURDATE(), interval 1 month) ), interval 1 day) )
Может подскажите как таким же простым способом в php вывести дату которая получиться после прибавлении к текущему времени 10 часов
Пробовал mktime но у меня ничего не вышло даже когда я хотел прибавить 1 день
$tomorrow = mktime (0,0,0,date("m") ,date("d")+1,date("Y"));
-
а ты посмотри в примерах к функции date и mktime, ЧТО возвращает mktime и КАК это использовать.
Может быть, ты все-таки, сам научишься читать документацию, или тебя так и тыкать носом в каждую строчку?
-
да там все как то не логично с датой. все до меня не доходит никак. я раньше на аспе програмировал. и теперь каждый раз когда берусь за пхр то удивляюсь - нахрена столько кода надо написать что бы что-то получить или к примеру узнать какое будет число если к текущей дате прибавить 10 часов. там (в аспе)это делалось одной простой функцией.
-
На PHP это тоже делается ОДНОЙ простой функцией.
Для того, чтобы вывести эту дату в НУЖНОМ ФОРМАТЕ, используется еще одна простая функция.
Все очень просто и логично. одна функция прибавляет, друкая - форматирует.
-
Спасибо, но не могу сказать что ваш ответ помог.
Но возник еще один вопрос: зачем вы тратили время на ответ мне, если ничего не сказали? Не отвечали бы и все. Я бы и этим умлся.
-
a@mail.dux.ru
Слушай, ну почитай ты документацию. Для того, чтобы корректно работать с датой, используй дату в формате UNIX TIMESTAMP. Что это такое и как этим пользоваться - см. функцию time().
Расшифровывая ответ RomikChef: получаешь дату в формате эпохи Юникс, прибавляешь к ней 10*60*60 и выводишь при помощи mktime()
-
Спасибо всем за помощь.
Задача решается так
(для тех, кто ищет решение такой же проблемы:
прибавить к терущей дате 10 часов и узнать какой будет день)
Решение:
1 сначало узнаем сколько сейчас часов
$h=Date(H);
2 затем получим необходимую нам дату
$d=Date(d,mktime ($h+10,0,0,date("m") ,date("d"),date("Y")) );
Боюсь, что с помощью одного только мануала до такого не додуматься.
-
Боюсь, что с помощью одного только мануала до такого не додуматься.
Угу. Если извращаться. А если проще, то:
$d=mktime(\'H:i:s j:n:y\',time()+10*60*60);
Имеем точную дату в формате ЧЧ:ММ:СС ДД:ММ:ГГ через десять часов после текущего времени.
Большая часть времени ушла на то, чтобы выцепить из мануала буковки для mktime();
[OFF]И пусть тебе будет стыдно :D [/OFF]
-
a@mail.dux.ru, дурилка картонная, я отвечал ровно на то, что ты спрашивал.
Не нравятся ответы? Научись задавать вопросы.
Мое последнее сообщение - ответ не на вопрос про дату, а на нытье про АСП.
А ответ был выше. Но ты, судя по всему, прекрасно умеешь стонать и жаловаться, а вот ЧИТАТЬ у тебя получается с большим трудом.
Если бы умел читать, то все бы сделал еще после моего первого ответа, и сделал бы вот так:
$d=date("d", mktime(date("H")+10));
Думать тут не надо. Надо просто прочесть в документации описание функций, и правильно воспользоваться ими.
И строки надо брать в кавычки.
-
я вот читал в правилах, что за оскорбления могут и отключть. Но на фанатов форума наверное это правило не действует?
Про асп и пхп: Пхп имеет много хороших свойств и функций.
Но при изучении он здорово уступает аспу.
На аспе все логично и понятно. А пхп видать был написан не для написания веб сайтов а для чего то другого. или написан твердолобым. А потом всячески был дороботан. Но это не значит что я от него откажусь :)
А документация по пхп - дерьмо. надо писать так что бы и баранам было понятно. а если баран не понял - плохая документация. Вот так! (это мнение моих профессоров в институте где я учился)
И вообще, RomikChef я почитал вашу переписку с другими участниками форума. Оскорбления вместо ответов на вопросы - обячное явление. ЗАЧЕМ ТРАТИТЕ ВРЕМЯ?
Хотя мне вы помогли. За это спасибо. ;)
-
Исключительно из наивной веры в человечество.
В то, что даже самый темный и ленивый человек, не могущий и шагу ступить без помощи окружающих, может научиться делать что-то самостоятельно.
Что человека можно научить задавать вопросы.
Хотя именно на тебе я потерял время. Ты всеми силами отпихиваешься, когда тебе дают СПОСОБ решения ВСЕХ задач и хочешь только конкретного ответа на сиюминутную.
Про PHP ты ошибаешься, по темноте своей, но спорить с тобой об этом бессмысленно.
Документация как справочник - вполне выполняет свои функции. Обучающие на нее и не возлагались. По поводу баранов - это желательно. Но ТРЕБОВАТЬ что-то ты можешь либо от корпорации майкрософт, которая с тебя денег слупила, или от своих детей. А если тебе не нравится документация на PHP... Тебе подсказать, куда ты можешь пойти со своими претензиями?
-
а вот я не буду Вас оскорблять. т.к. я человек воспитанный. и так поступают умные люди.
-
[тема закрыта]