|
|
|
| У меня вот такая проблема, я писал скрипт и наткнулся на такую вот проблему, как мне сделать срипт, который бы при вводе пользователем времени допустим 00:00 сравнивал с допустимым временем от 00:00 до 24:00 и если пользовательское введенное время совпадает с указанным форматом времени то вывести ответ, в противном случае ошибку | |
|
|
|
|
|
|
|
для: saider
(17.04.2009 в 11:21)
| | Я вот такой вот скрипт на мой вопрос написал, можно ли его использовать?
<?php
echo <<<EOF
<form action="2.php" method="GET">
<input type="text" class="input" maxlength="5" name="time" size="5">
<input type="submit" value="Отправить">
</form>
EOF;
for($i=0;$i<1440;$i++){
$time_zone=date("G:i", mktime(0,$i,0,0,0, date("y")));
if($time_zone==trim($_GET['time'])) $time_f="1";
}
if(isset($time_f)) echo "Верно";
else echo "Ошибка";
?>
|
| |
|
|
|
|
|
|
|
для: SaIdEr
(17.04.2009 в 12:15)
| | В принципе почти все верно, я бы вот так откорректировал и все было бы гуд:
<?php
if (isset($_GET["time"])) {
for ($i = 0; $i < 1440; $i++) {
$time_zone = date("H:i", mktime(0,$i,0,0,0, date("y")));
$time_zone2 = date("G:i", mktime(0,$i,0,0,0, date("y")));
if (($time_zone == trim($_GET['time'])) || ($time_zone2 == trim($_GET['time']))) {
$time_f = "1";
break;
}
}
if (isset($time_f) && $time_f == "1")
echo "Верно";
else
echo "Ошибка";
}
?>
|
| |
|
|
|
|
|
|
|
для: vml
(17.04.2009 в 12:53)
| | Вы и вправду считаете, что для этой проверки нужно гонять цикл? | |
|
|
|
|
|
|
|
для: Trianon
(17.04.2009 в 13:05)
| | А утебя есть предложения полудше?:) | |
|
|
|
|
|
|
|
для: SaIdEr
(17.04.2009 в 13:42)
| | выделить из строки два поля любым способом (explode, preg_match, sscanf) ,
проверить их на формат (ctype_digit, strlen) и диапазон.
При применении регулярок проверка на формат решается самим preg_match | |
|
|
|