Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) Как преобразовать строку в дату? / 14 сообщений из 14, страница 1 из 1
23.05.2006, 12:19:36
    #33744897
Владимир777
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
есть две переменные varchar, например

20070204
20060131


надо получить переменную равную округленному до целого количеству месяцев между первой переменной и второй
в данном случае 12,


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
$var1 =$row['dat_e']; 
$var2 =$row['dat_n']; 

echo "$var1"; 
echo "<br>"; 
echo "$var2"; 
echo "<br>"; 
$time1 = getdate($var1); 
$time2 = getdate($var2); 

echo "$time1[hours]:$time1[minutes] $time1[mday].$time1[mon].$time1[year] <br>"; 
echo "$time2[hours]:$time2[minutes] $time2[mday].$time2[mon].$time2[year] <br>"; 


выходит
20070204
20060131
13:3 21.8.1970
10:15 21.8.1970

неправильно
Модератор:
Оформляйте топики согласно требованиям форума!!! Топики оформленные не по правилам - будут удаляться.
...
Рейтинг: 0 / 0
23.05.2006, 13:38:07
    #33745330
Владимир777
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
если я преобразую поле в date , данные сохраняться?
просто сейчас пользователи вводят дату в формате
23.05.2006 так им удобнее,

и потом дата в формате 20060523 записывается в базу для возможности сортировки
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
if (strlen(trim($dat_n))== 10 ) 
{$dat3=substr($dat_n, 0 , 2 ); 
$dat2=substr($dat_n, 3 , 2 ); 
$dat1=substr($dat_n, 6 , 4 ); 
$dat_n=$dat1* 10000 +$dat2* 100 +$dat3;} 

$request = "UPDATE delf_company 
                  SET   dat_n     = '$dat_n', 
                    WHERE id = ".$id_company; 
   $result  = mysql_query($request); 
а из базы достается для редактирования опять как 23.05.2006
...
Рейтинг: 0 / 0
23.05.2006, 14:23:16
    #33745556
VERS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
Владимир777если я преобразую поле в date , данные сохраняться?
просто сейчас пользователи вводят дату в формате
23.05.2006 так им удобнее,

и потом дата в формате 20060523 записывается в базу для возможности сортировки
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
if (strlen(trim($dat_n))== 10 ) 
{$dat3=substr($dat_n, 0 , 2 ); 
$dat2=substr($dat_n, 3 , 2 ); 
$dat1=substr($dat_n, 6 , 4 ); 
$dat_n=$dat1* 10000 +$dat2* 100 +$dat3;} 

$request = "UPDATE delf_company 
                  SET   dat_n     = '$dat_n', 
                    WHERE id = ".$id_company; 
   $result  = mysql_query($request); 
а из базы достается для редактирования опять как 23.05.2006

Пипец ... где Вы научились таким глупостям? Если просто переделать тип поля, сохранятся, мускуль умеет с такими датами работать
...
Рейтинг: 0 / 0
23.05.2006, 14:30:00
    #33745594
Владимир777
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
то есть надо преобразовать в правильный формат 2006-05-23 и потом заменить тип поля?
...
Рейтинг: 0 / 0
23.05.2006, 14:35:51
    #33745625
VERS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
Надо просто сменить тип поля на DATE
Код: plaintext
ALTER TABLE `tablename` CHANGE `field` `field` DATE DEFAULT '0000-00-00' NOT NULL 
1) Если только изначально тип поля varchar
2) Если только там даты хранятся в виде 20070204, 20060131

-------------------------------
www.free-lancer.ru
...
Рейтинг: 0 / 0
23.05.2006, 14:36:19
    #33745627
VERS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
Зы, советую сначало проверить в тестовой таблице :)
-------------------------------
www.free-lancer.ru
...
Рейтинг: 0 / 0
23.05.2006, 14:39:39
    #33745646
Владимир777
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
спасибо
...
Рейтинг: 0 / 0
23.05.2006, 14:41:33
    #33745659
Владимир777
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
а в каком виде после смены поля на сайт нужно заносить переменные,
...
Рейтинг: 0 / 0
23.05.2006, 15:26:23
    #33745887
Vint_x
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
Хорани тогда уж в формате UNIX timestamp с ним и работать удобнее и сортировать и т.д.
...
Рейтинг: 0 / 0
23.05.2006, 15:27:27
    #33745892
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
Vint_xХорани тогда уж в формате UNIX timestamp с ним и работать удобнее и сортировать и т.д.
Зачем? Дата хранится в базе, каковы причины использовать не специально предназначенный для этого тип?
...
Рейтинг: 0 / 0
23.05.2006, 15:45:35
    #33745979
Damnedest
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
В каждом случае все индивидуально...
Иногда удобнее Unix иногда Date.

Date используется когда необходимо делать слодные выборки по этому полю (типа вывести список юзеров зарегившихся в марте всех годов. тут только Date)
Unix лучше в тех случаях, когда сложные выборки не нужны, а нужны простые типа кто активен за последние 5 минут или кто зарегился за последний месяц.
...
Рейтинг: 0 / 0
23.05.2006, 15:46:57
    #33745986
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
Чем лучше-то?
...
Рейтинг: 0 / 0
23.05.2006, 16:26:40
    #33746169
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
DocAlЧем лучше-то?размером, видимо :)

Владимир777, напиши ещё чего-нить смешного.
...
Рейтинг: 0 / 0
23.05.2006, 16:35:09
    #33746210
4m@t!c
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) Как преобразовать строку в дату?
Закрыт за флейм
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) Как преобразовать строку в дату? / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]