前提・実現したいこと
簡単な占いサイトをHTML
とPHP
を使って練習で制作しています。
占うために必要な情報は生年月日です。
実現したいこと
一年の境を2月4日にして、4日以前に生まれた人、4日以降に生まれた人をグループ1とグループ2の二つに分類したいです。
発生している問題・エラーメッセージ
エラーメッセージは表示されていなのですが、常に2月4日以前生まれの人のグループ1の結果しか表示されない状態です。
該当のソースコード
HTML
html
1<html lang="ja"> 2 3<head> 4 <meta charset="utf-8"> 5 <title>happy.html</title> 6</head> 7 8<body> 9 <form action="index.php" method="post"> 10 11 <h2>Your Birthday!</h2> 12 <p>Year</p> 13 <select name="year"> 14 <option name="born" value="1990">1990</option> 15 <option name="born" value="1991">1991</option> 16 <option name="born" value="1992">1992</option> 17 <option name="born" value="1993">1993</option> 18 </select> 19 20 <select name="month"> 21 <option value="jan">1月</option> 22 <option value="feb">2月</option> 23 <option value="mar">3月</option> 24 <option value="apr">4月</option> 25 <option value="may">5月</option> 26 <option value="jun">6月</option> 27 <option value="jul">7月</option> 28 <option value="aug">8月</option> 29 <option value="sep">9月</option> 30 <option value="oct">10月</option> 31 <option value="nov">11月</option> 32 <option value="dec">12月</option> 33 </select> 34 35 <select name="day"> 36 <option value="1">1日</option> 37 <option value="2">2日</option> 38 <option value="3">3日</option> 39 <option value="4">4日</option> 40 <option value="5">5日</option> 41 <option value="6">6日</option> 42 <option value="7">7日</option> 43 <option value="8">8日</option> 44 <option value="9">9日</option> 45 <option value="10">10日</option> 46 <option value="11">11日</option> 47 <option value="12">12日</option> 48 <option value="13">13日</option> 49 <option value="14">14日</option> 50 <option value="15">15日</option> 51 <option value="16">16日</option> 52 <option value="17">17日</option> 53 <option value="18">18日</option> 54 <option value="19">19日</option> 55 <option value="20">20日</option> 56 <option value="21">21日</option> 57 <option value="22">22日</option> 58 <option value="23">23日</option> 59 <option value="24">24日</option> 60 <option value="25">25日</option> 61 <option value="26">26日</option> 62 <option value="27">27日</option> 63 <option value="28">28日</option> 64 <option value="29">29日</option> 65 <option value="30">30日</option> 66 <option value="31">31日</option> 67 </select> 68 <p></p> 69 <br> 70 <p></p> 71 <p></p> 72 <input type="submit" value="送信"> 73 </form> 74 75</body> 76 77</html>
index.php
<html lang="ja"> <head> <meta charset="utf-8"> <title>hapiena1.php</title> </head> <body> <?php $year = $_POST['year']; $month = $_POST['month']; $day = $_POST['day']; switch ($year) { case '1990': case '1991': if ($month == "feb" || $day < 4){ print "あなたは1990年か1991年の2月4日以前生まれなのでグループ1です。"; } else if ($month == "feb" || $day > 4){ print "あなたは1990年か1991年の2月4日以降生まれなのでグループ2です。"; } break; case '1992': case '1993': if ($month == "feb" || $day < 4){ print "あなたは1992年か1993年の2月4日以前生まれなのでグループ1です。"; } else if ($month == "feb" || $day > 4){ print "あなたは1992年か1993年の2月4日以降生まれなのでグループ2です。"; } break; defualt; print "その他"; break; } ?> </body> </html>
試したこと
switch
文のそれぞれのcase
の中で再度$month
と$day
を定義しました。
まだ初心者で至らぬ点は多々あるかとは思いますが、ご教授いただけたら幸いです。
よろしくおねがいします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/07 07:11