· 9 years ago · Nov 17, 2016, 10:36 AM
1â– test08_mailform_input.php
2<?php
3session_start ();
4if (isset ( $_SESSION ['err'] )) {
5 $err = $_SESSION ['err'];
6}
7?>
8<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
9"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
10<html xm1ns="http://www.w3.org/1999/xhtml">
11<html lang="ja">
12<head>
13<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
14<meta http-equiv="Content-Script-Type" content="text/javascript">
15
16
17<title>入力フォーム</title>
18<style type="text/css">
19p#submit_btn {
20 text-align: center;
21}
22
23.content {
24 margin-left: 107px;
25 margin-top: 0px;
26}
27
28.form {
29 color: white;
30 background-color: #4682B4;
31 text-align: center;
32 /* padding-left: 370px; */
33 padding-top: 5px;
34 padding-bottom: 5px;
35 font-weight: bold;
36 font-size: 95%;
37 width: 825px;
38}
39
40.textform {
41 margin-left: 68px;
42}
43</style>
44
45</head>
46<body>
47 <h1>
48 <font color="#4682B4">ãŠå•ã„åˆã‚ã›</font>
49 </h1>
50 <p class="form">入力フォーム</p>
51 <form action="test08_mailform_output.php" method="post">
52 <p>
53 æ°å:<input type="text" class="textform" name="name"
54 value=<?php
55 if (isset ( $_SESSION ['name'] )) {
56 echo $_SESSION ['name'];
57 }
58 ?>><?php
59 if (isset ( $err ['name'] )) {
60 echo '<p class="content"><b><font color="red">' . $err ['name'] . '</font></b></p>';
61 }
62 ?>
63 </p>
64 <p>
65 年齢: <input type="text" style="margin-left: 63px;" name="age"
66 value=<?php
67 if (isset ( $_SESSION ['age'] )) {
68
69 echo $_SESSION ['age'];
70 }
71 ?>><?php
72 if (isset ( $err ['age'] )) {
73 echo '<p class="content"><b><font color="red">' . $err ['age'] . '</font></b></p>';
74 }
75 ?>
76 </p>
77 <p>
78 性別: <input type="radio" style="margin-left: 79px;" name="gender"
79 value="man"
80 <?php
81 // ã‚‚ã—$_SESSION['gender']ãŒã‚ã£ã¦$_SESSION ['gender']ã®ä¸ã®å€¤ãŒ'男性'ã¨ç‰ã—ã„ã‚‚ã—ãã¯
82 // $_SESSION ['gender']ãŒãªã„å ´åˆ(デフォルトã¯ç”·æ€§ã«ã—ã¨ã)ã¯ç”·æ€§ãŒcheckedã§ãƒã‚§ãƒƒã‚¯ã•れる
83 if (isset ( $_SESSION ['gender'] ) && $_SESSION ['gender'] == '男性' || ! isset ( $_SESSION ['gender'] )) {
84 echo 'checked';
85 }
86 ?>></input>男性 <input type="radio" name="gender" value="woman"
87 <?php if(isset($_SESSION['gender']) && $_SESSION['gender'] == '女性') { echo 'checked';}?>>女性
88
89 </p>
90 <p>
91 メールアドレス:<input type="text" style="margin-left: 8px;" name="email"
92 value=<?php
93 if (isset ( $_SESSION ['email'] )) {
94 echo $_SESSION ['email'];
95 }
96 ?>><?php
97 if (isset ( $err ['email'] )) {
98 echo '<p class="content"><b><font color="red">' . $err ['email'] . '</font></b></p>';
99 }
100 ?>
101
102
103 </p>
104 <p>
105 地域: <select name="region" style="margin-left: 68px;">
106 <?php
107 $region = array (
108 "0001" => "北海é“",
109 "0002" => "æ±åŒ—",
110 "0003" => "é–¢æ±",
111 "0004" => "ä¸éƒ¨",
112 "0005" => "è¿‘ç•¿",
113 "0006" => "ä¸å›½",
114 "0007" => "四国",
115 "0008" => "ä¹å·ž"
116 );
117 // 「"ã€â†’変数ã¯å±•é–‹ã•れる 「'ã€â†’変数ã¯å±•é–‹ã•れãªã„
118 foreach ( $region as $key => $value ) {
119 if (isset ( $_SESSION ['region'] ) && $_SESSION ['region'] == $value) {
120 echo '<option value="', $key, '"selected>', $value, '</option>';
121 } else {
122 echo '<option value="', $key, '">', $value, '</option>';
123 }
124 }
125 // }
126 ?></select>
127 </p>
128 <p>
129 <?php
130 $hobby = array (
131 "旅行",
132 "外食",
133 "レジャー",
134 "音楽鑑賞",
135 "ギャンブル",
136 "インターãƒãƒƒãƒˆ"
137 );
138 // ã“ã†ã‹ã‘ã°è¤‡æ•°é€ä¿¡ã§ãã‚‹
139
140 echo "趣味:";
141
142 foreach ( $hobby as $value ) {
143 // in_array→特定ã®å€¤ãŒé…列ã«å«ã¾ã‚Œã¦ã„ã‚‹ã‹èª¿ã¹ã‚‹
144 // $_SESSION['hobby']ã®å€¤ã¨$valueãŒç‰ã—ã‹ã£ãŸã‚‰
145 // ã‚‚ã—$_SESSION['hobby]ãŒå˜åœ¨ã—ã¦ã„ã¦$_SESSION['hobby']é…列ã®ä¸ã«$valueã®æ–‡å—ãŒã‚ã£ãŸã‚‰
146 if (isset ( $_SESSION ['hobby'] ) && in_array ( $value, $_SESSION ['hobby'] )) {
147
148 echo '<input type="checkbox" style="margin-left:20px;" name="hobby[]" value="', $value, '"checked>';
149 } else {
150 echo '<input type="checkbox" style="margin-left:20px;" name="hobby[]" value="', $value, '">', "$value";
151 }
152 }
153
154 ?>
155 <?php
156 if (isset ( $err ['hobby'] )) {
157 echo '<br/><b><font color="red">', $err ['hobby'], '</font></b>';
158 }
159 ?>
160 </p>
161 <p>
162 ã”æ„見:<br />
163 <textarea rows="6" cols="65" name="word"><?php if(isset($_SESSION['word'])){ echo $_SESSION['word'];}?></textarea>
164 <?php
165 if (isset ( $err ['word'] )) {
166 echo '<br/><b><font color="red">' . $err ['word'] . '</font></b>';
167 }
168 ?>
169 </p>
170 <p>
171 <span style="margin-left: 250px;"> <input type="submit" value="é€ä¿¡" /></span>
172 </p>
173
174 </form>
175
176</body>
177</html>
178
179â– test08_mailform_output.php
180<?php
181session_start ();
182
183if ($_POST) {
184 $name = $_POST ['name'];
185 $age = $_POST ['age'];
186 $gender = $_POST ['gender'];
187 $email = $_POST['email'];
188 if ($gender == 'man') {
189
190 $gender = '男性';
191 } else if ($gender == 'woman') {
192 $gender = '女性';
193 }
194 // var_dump ( $gender );
195 $region = $_POST ['region'];
196 switch ($region) {
197 case "0001" :
198 $region = '北海é“';
199 break;
200 case "0002" :
201 $region = 'æ±åŒ—';
202 break;
203 case "0003" :
204 $region = 'é–¢æ±';
205 break;
206 case "0004" :
207 $region = 'ä¸éƒ¨';
208 break;
209 case "0005" :
210 $region = 'è¿‘ç•¿';
211 break;
212 case "0006" :
213 $region = 'ä¸å›½';
214 break;
215 case "0007" :
216 $region = '四国';
217 break;
218 case "0008" :
219 $region = 'ä¹å·ž';
220 break;
221 }
222 $hobby = $_POST ['hobby'];
223 // var_dump ( $hobby );
224 $word = $_POST ['word'];
225 $message = '';
226 // count関数→変数ã«å«ã¾ã‚Œã‚‹å…¨ã¦ã®è¦ç´ ã€or オブジェクトã«å«ã¾ã‚Œã‚‹ä½•ã‹ã®æ•°ã‚’æ•°ãˆã‚‹
227 // ä»–ã®äººã‹ã‚‰ã¿ã¦è§£ã‚Šã‚„ã™ã„よã†ã«ã€$hobby>1よりも$hobby>=2ã®æ–¹ãŒã„ã„
228 // ã‚‚ã—$hobbyã«æ ¼ç´ã•れã¦ã„ã‚‹è¦ç´ ãŒ2以上ãªã‚‰
229 if (count ( $hobby ) >= 2) {
230 $message = '多趣味ã§ã™ã';
231 }
232
233 $_SESSION ['name'] = $name;
234 $_SESSION ['age'] = $age;
235 $_SESSION ['gender'] = $gender;
236 $_SESSION['email'] = $email;
237 $_SESSION ['region'] = $region;
238 $_SESSION ['hobby'] = $hobby;
239 $_SESSION ['word'] = $word;
240
241 $err = array ();
242
243 if (strlen ( $_POST ['name'] ) == 0) {
244 $err ['name'] = 'æ°åを入力ã—ã¦ãã ã•ã„。';
245 $flag = false;
246 }
247
248 if (strlen ( $_POST ['age'] ) == 0) {
249 $err ['age'] = '年齢を入力ã—ã¦ãã ã•ã„。';
250 $flag = false;
251 }
252
253 if(strlen($_POST['email']) == 0){
254 $err['email'] = 'メールアドレスを入力ã—ã¦ãã ã•ã„。';
255 }
256
257 if (count ( $_POST ['hobby'] ) == 0) {
258 $err ['hobby'] = 'è¶£å‘³ã‚’é¸æŠžã—ã¦ãã ã•ã„。';
259 $flag = false;
260 }
261
262 if (strlen ( $_POST ['word'] ) == 0) {
263 $err ['word'] = '一言入力ã—ã¦ãã ã•ã„。';
264 $flag = false;
265 }
266 // ã‚‚ã—$errã«æ ¼ç´ã•れã¦ã„ã‚‹è¦ç´ ãŒ1以上ãªã‚‰
267 if (count ( $err ) >= 1) {
268 $_SESSION ['err'] = $err;
269 header ( 'Location:test08_mailform_input.php' );
270 }
271}
272?>
273
274<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
275"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
276<html xm1ns="http://www.w3.org/1999/xhtml">
277<html lang="ja">
278<head>
279<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
280<meta http-equiv="Content-Script-Type" content="text/javascript">
281
282
283 <title>確èªç”»é¢</title>
284 <style type="text/css">
285.form {
286 color: white;
287 background-color: #4682B4;
288 text-align: center;
289 /* padding-left: 370px; */
290 padding-top: 5px;
291 padding-bottom: 5px;
292 font-weight: bold;
293 font-size: 95%;
294 width: 825px;
295}
296</style>
297
298</head>
299<body>
300 <h1>
301 <font color="#4682B4">課題23</font>
302 </h1>
303 <p class="form">確èªç”»é¢</p>
304 <form action="test08_mailform_complete.php" method="post">
305 <p>æ°å:<?php echo $_SESSION['name'];?></p>
306 <p>年齢:<?php echo $_SESSION['age'];?></p>
307 <p>性別:<?php echo $_SESSION['gender'];?></p>
308 <P>メールアドレス:<?php echo $_SESSION['email'];?></P>
309 <p>地域:<?php echo $_SESSION['region'];?></p>
310 <?php
311 // 波括弧(カーリーブラケット)「{}ã€ã§å›²ã‚“ã§å¤‰æ•°ã‚’明示的ã«è¡¨ã™ã€‚「{}ã€ã§å›²ã‚€ã¨å¤‰æ•°ã®ä¸èº«ãŒè¡¨ç¤ºã•れる
312 // é…列è¦ç´ を使ã†å ´åˆã¯å¿…ãšæ³¢æ‹¬å¼§ã‚’使ã‚ãªã‘れã°ãªã‚‰ãªã„
313 echo '趣味:';
314 foreach ( $hobby as $value ) {
315 echo $value . " ";
316 }
317 echo '<br/>';
318
319 ?>
320
321
322
323 <b><font color="#4682B4"><?php echo $message; ?></font></b>
324 <p>何ã‹ä¸€è¨€ï¼š<?php echo $_SESSION['word'];?></p>
325 <p>
326 <span style="margin-left: 250px;"><input type="submit"
327 value="ã“ã®å†…容ã§é€ä¿¡" /></span>
328
329 </form>
330 </p>
331
332 <p>
333 <span style="margin-left: 280px;"><button type="button"
334 onclick="location.href='test08_mailform_input.php'">戻る</button></span>
335 </p>
336
337</body>
338</html>
339<?php
340
341// var_dump ( $region );
342// var_dump ( $_POST );
343// var_dump ( $_POST ['hobby'] );
344// var_dump ( $_POST ['region'] );
345?>
346
347â– test08_mailform_complete.php
348<?php
349session_start ();
350
351?>
352<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
353"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
354<html xm1ns="http://www.w3.org/1999/xhtml">
355<html lang="ja">
356<head>
357<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
358<meta http-equiv="Content-Script-Type" content="text/javascript">
359
360
361 <title>完了画é¢</title>
362 <style type="text/css">
363.form {
364 color: white;
365 background-color: #4682B4;
366 text-align: center;
367 /* padding-left: 370px; */
368 padding-top: 5px;
369 padding-bottom: 5px;
370 font-weight: bold;
371 font-size: 95%;
372 width: 825px;
373}
374</style>A
375
376</head>
377<body>
378 <h1>
379 <font color="#4682B4">ãŠå•ã„åˆã‚ã›</font>
380 </h1>
381 <p class="form">完了画é¢</p>
382
383 <?php
384 $to = '';
385 $sFromMail = '';
386 $title = '';
387 $content = '';
388 $from = '';
389
390 $name = $_SESSION ['name'];
391 $age = $_SESSION ['age'];
392 $gender = $_SESSION ['gender'];
393 $email = $_SESSION['email'];
394 $region = $_SESSION ['region'];
395 $hobby = $_SESSION ['hobby'];
396 $word = $_SESSION ['word'];
397 //é€ä¿¡å…ˆ
398 $to = '@gmail.com';
399
400 $sFromMail = $_SESSION['email'];
401 //メールã®ä»¶å
402 $title = $_SESSION['name'];
403 //ãƒ¡ãƒ¼ãƒ«ã®æœ¬æ–‡
404// $content = $_SESSION['word'].$_SESSION['name'];
405
406// $content = 'æ°å:'. $_SESSION['name'].'</br>年齢:'.$_SESSION['age'].'</br>性別:'.$_SESSION['gender'].$_SESSION['word'];
407
408
409 $from = 'From:'.$_SESSION['email'];
410
411 //ä»¶åã‚’JISã«å¤‰æ›
412 $title = mb_encode_mimeheader($title, "JIS");
413
414 $content .= '年齢:'.$age;
415 $content .= '性別:'.mb_encode_mimeheader($gender);
416 $content .= '地域:'.mb_encode_mimeheader($region);
417 $content .= 'ã”æ„見:'.mb_encode_mimeheader($word);
418 mb_language("Japanese");
419
420 mb_internal_encoding("UTF-8");
421//mb_send_mail(é€ä¿¡å…ˆ, 題å, 本文, ヘッダ);
422 if(mb_send_mail($to, $title, $cotent, $from)){
423
424 echo 'é€ä¿¡å®Œäº†ã—ã¾ã—ãŸã€‚<br/>';
425
426 }else{
427
428 echo 'é€ä¿¡å¤±æ•—ã—ã¾ã—ãŸã€‚<br/>';
429
430 }
431
432
433 // $_SESSIONã®ãƒ‡ãƒ¼ã‚¿ã‚’削除
434 $_SESSION = array ();
435 // ã‚»ãƒƒã‚·ãƒ§ãƒ³ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ç ´æ£„
436 session_destroy ();
437 ?>
438<!-- <p>é€ä¿¡å®Œäº†ã—ã¾ã—ãŸã€‚</p> -->
439 <p>
440 <span style="margin-left: 250px;"><button type="button"
441 onclick="location.href='test08_mailform_input.php'">入力画é¢ã«æˆ»ã‚‹</button></span>
442 </p>
443 <p>
444 <span style="margin-left: 250px;"><button type="button"
445 onclick="location.href='test08.php'">BMIè¨ˆç®—æ©Ÿã«æˆ»ã‚‹</button></span>
446 </p>
447
448</body>
449</html>