Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |

01.04.2010, 19:14
|
|
Познающий
Регистрация: 29.01.2009
Сообщений: 81
Провел на форуме: 255434
Репутация:
12
|
|
PHP работа с датами
в общем как грамотно сделать такую щтуку:
в форме выбирается две даты(день,месяц,год) (дата1 всегда меньше дата2). обработчик же должен вывести разницу дней между этими датами.
использовать селект в форме будет правильно?
|
|
|

01.04.2010, 20:30
|
|
Новичок
Регистрация: 30.03.2010
Сообщений: 18
Провел на форуме: 28384
Репутация:
2
|
|
PHP код:
<?php
function date_diff( $date_last, $date_new)
{
$date_last=explode('.',$date_last);
$date_new=explode('.',$date_new);
$count_day=1;
$count_month=0;
$kk=true;
$nn=true;
while ($kk) {
$count_month=$count_month+1;
if ((mktime(0,0,0,$date_last[1]+$count_month,$da te_last[0],$date_last[2]))>(mktime(0,0,0,$date _new[1],$date_new[0],$date_new[2]))) {
$count_month=$count_month -1;
while ($nn) {
if ((mktime(0,0,0,$date_last[1]+$count_month,$da te_last[0]+$count_day,$date_last[2]))==(mktim e(0,0,0,$date_new[1],$date_new[0],$date_new[2 ]))) $nn=false;
else $count_day=$count_day+1;
}
}
if ((mktime(0,0,0,$date_last[1]+$count_month,$da te_last[0]+$count_day,$date_last[2]))==(mktim e(0,0,0,$date_new[1],$date_new[0],$date_new[2 ]))) $kk=false;
}
$arr[]=$count_month;
$arr[]=$count_day;
return $arr;
}
$gg=date_diff('10.10.2001','11.11.2010');
print_r($gg);
?>
|
|
|

01.04.2010, 20:31
|
|
Новичок
Регистрация: 30.03.2010
Сообщений: 18
Провел на форуме: 28384
Репутация:
2
|
|
Вопрос про селект непонятен
|
|
|

01.04.2010, 21:08
|
|
Познающий
Регистрация: 29.01.2009
Сообщений: 81
Провел на форуме: 255434
Репутация:
12
|
|
как вводить дату в форму?
я имел ввиду чтоб юзер не вводил, а выбирал день, месяц, год
3 параметра. а обработчик уже из трех переменных делал дату и вычитал из второй первую.
|
|
|

02.04.2010, 07:02
|
|
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме: 3660186
Репутация:
905
|
|
Календарь какой-нибудь прикрутите к форме.
|
|
|

02.04.2010, 12:39
|
|
Новичок
Регистрация: 30.03.2010
Сообщений: 18
Провел на форуме: 28384
Репутация:
2
|
|
PHP код:
<html>
<form action="select1.php" method="post">
<select name="d">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
</select>
<select name="m">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
</select>
<select name="y">
<option value="2001">2001</option>
<option value="2002">2002</option>
<option value="2003">2003</option>
<option value="2004">2004</option>
<option value="2005">2005</option>
<option value="2006">2006</option>
<option value="2007">2007</option>
</select>
<input type="submit" value="Отправить"></p>
</form>
PHP код:
if (!empty($_POST) && is_numeric($_POST['m']) && is_numeric($_POST['d']) && is_numeric($_POST['y'])) {
$date = "{$_POST['d']}.{$_POST['m']}.{$_POST['y']}";
}
|
|
|

02.04.2010, 15:31
|
|
Познающий
Регистрация: 29.01.2009
Сообщений: 81
Провел на форуме: 255434
Репутация:
12
|
|
вот получили две даты в переменных текстового типа.
дальше конвертирую с помощью strtotime и все получается)
спасибо!!
другой вопрос, вот есть переменная в ней число. как мне значение этой переменной в обработчик отправить? чтоб юзер не видел.
|
|
|

02.04.2010, 15:49
|
|
Постоянный
Регистрация: 29.07.2009
Сообщений: 400
Провел на форуме: 1455812
Репутация:
150
|
|
<input type="hidden" name="secret" value="ya_ebu_sobak" />
|
|
|

02.04.2010, 15:50
|
|
Познающий
Регистрация: 29.01.2009
Сообщений: 81
Провел на форуме: 255434
Репутация:
12
|
|
даа, точно! но спс что написал)
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|