2018년 5월 14일 월요일

[PHP예제] 068 날짜가 맞는지 확인하고 싶을 때




 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>날짜가 맞는지 확인하고 싶을 때</title>
    <link href="style.css" rel="stylesheet">
</head>
<body>
<div>
<?php
date_default_timezone_set('Asia/Seoul');

// 폼으로부터 데이터를 입력받음. 이 파일을 처음으로 표시했을 때 날짜 데이터는
// 전달되지 않으므로 오늘 날짜를 연도별, 월별, 일별로 변수에 대입함
$year   = isset($_POST['year'])  ? intval($_POST['year'])  : date('Y');
$month  = isset($_POST['month']) ? intval($_POST['month']) : date('n');
$day    = isset($_POST['day'])   ? intval($_POST['day'])   : date('j');

$yearSelector = ''; // 연도 부분의 선택 메뉴 옵션
for($i = 1980; $i <= 2040; $i++)
{
  $selected = ($i == $year) ? 'selected' : '';
  $yearSelector .= '<option ' . $selected . '>' . $i . '</option>';
}

$monthSelector = ''; // 월 부분의 선택 메뉴 옵션
for($i = 1; $i <= 12; $i++)
{
  $selected = ($i == $month) ? 'selected' : '';
  $monthSelector .= '<option ' . $selected . '>' . $i . '</option>';
}

$daySelector = ''; // 일 부분의 선택 메뉴 옵션
for($i = 1; $i <= 31; $i++)
{
  $selected = ($i == $day) ? 'selected' : '';
  $daySelector .= '<option ' . $selected . '>' . $i . '</option>';
}

// 확인하고 싶은 날짜의 전달 폼을 출력함.
echo <<<END
  <form method="post" action="068.php">
    <select name="year">$yearSelector</select>년&nbsp;
    <select name="month">$monthSelector</select>년&nbsp;
    <select name="day">$daySelector</select>년&nbsp;
    <input type="submit" value="날짜 확인">
  </form>
END;

$date = $year . '/' . $month . '/' . $day;  // 체크할 날짜

// 날짜가 맞는지 확인함
if( checkdate($month, $day, $year) )
{
  echo "<p>" . $date, " 은 올바른 날짜입니다.</p>";
}
else
{
  echo "<p>" . $date, " 은 잘못된 날짜입니다.</p>";
}

?>
</div>
</body>
</html>




댓글 없음:

댓글 쓰기