質問編集履歴

1

省略した場所を追加しました。

2020/06/19 10:22

投稿

hiropon15-8
hiropon15-8

スコア1

test CHANGED
File without changes
test CHANGED
@@ -16,349 +16,565 @@
16
16
 
17
17
  みなさんのお力を貸していただけないでしょうか。
18
18
 
19
+
20
+
21
+
22
+
23
+ ```contact
24
+
25
+ <?php
26
+
27
+ //===============================
28
+
29
+ // ログ
30
+
31
+ //===============================
32
+
33
+ //ログを取るか
34
+
35
+ ini_set('log_errors', 'on');
36
+
37
+ //ログの出力ファイルを指定
38
+
39
+ ini_set('error_log', 'php.log');
40
+
41
+
42
+
43
+ //===============================
44
+
45
+ // デバッグ
46
+
47
+ //===============================
48
+
49
+ // デバッグフラグ
50
+
51
+ $debug_flg = true;
52
+
53
+ //デバッグログ関数
54
+
55
+ function debug($str){
56
+
57
+ global $debug_flg;
58
+
59
+ if(!empty($debug_flg)){
60
+
61
+ error_log('デバッグ:'.$str);
62
+
63
+ }
64
+
65
+ }
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+ define('MSG01', '入力必須です');
74
+
75
+ define('MSG02', 'Emailの形式で入力してください');
76
+
77
+ define('MSG03', '半角英数字のみご利用いただけます');
78
+
79
+ define('MSG04', '500文字以内で入力してください');
80
+
81
+ define('MSG05', '電話番号の形式が違います');
82
+
83
+ define('SUC01', 'メールを送信しました');
84
+
85
+
86
+
87
+
88
+
89
+ //===============================
90
+
91
+ // グローバル変数
92
+
93
+ //===============================
94
+
95
+ // エラーメッセージ格納用の配列
96
+
97
+ $err_msg = array();
98
+
99
+
100
+
101
+ //===============================
102
+
103
+ // バリデーション関数
104
+
105
+ //===============================
106
+
107
+ function validRequired($str, $key){
108
+
109
+ if(empty($str)){ //空文字はダメにする
110
+
111
+ global $err_msg;
112
+
113
+ $err_msg[$key] = MSG01;
114
+
115
+ }
116
+
117
+ }
118
+
119
+ //バリデーション関数(Email形式チェック)
120
+
121
+ function validEmail($str, $key){
122
+
123
+ if(!preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9._-]+)+$/", $str)){
124
+
125
+ global $err_msg;
126
+
127
+ $err_msg[$key] = MSG02;
128
+
129
+ }
130
+
131
+ }
132
+
133
+ //バリデーション関数(半角チェック)
134
+
135
+ function validHalf($str, $key){
136
+
137
+ if(!preg_match("/^[a-zA-Z0-9]+$/", $str)){
138
+
139
+ global $err_msg;
140
+
141
+ $err_msg[$key] = MSG03;
142
+
143
+
144
+
145
+ }
146
+
147
+ }
148
+
149
+ //バリデーション関数(電話番号チェック)
150
+
151
+ function validZip($str, $key){
152
+
153
+ if(!preg_match("/^(0{1}\d{9,10})$/", $str)){
154
+
155
+ global $err_msg;
156
+
157
+ $err_msg[$key] = MSG05;
158
+
159
+
160
+
161
+ }
162
+
163
+ }
164
+
165
+ // selectboxチェック
166
+
167
+ // function validSelect($str, $key){
168
+
169
+ // if(!preg_match("/^[0-9]+$/", $str)){
170
+
171
+ // global $err_msg;
172
+
173
+ // if(!empty($err_msg[])){
174
+
175
+ // return $err_msg[];
176
+
177
+ // }
178
+
179
+ // }
180
+
181
+ // }
182
+
183
+ //post送信されていた場合
184
+
185
+ if(!empty($_POST)){
186
+
187
+
188
+
189
+ //変数にユーザー情報を代入
190
+
191
+ $name = $_POST['your_name'];
192
+
193
+ $email = $_POST['email'];
194
+
195
+ $adress = $_POST['adress'];
196
+
197
+ $phone_number = $_POST['phone_number'];
198
+
199
+
200
+
201
+
202
+
203
+ //err_msgが空ならば、処理をする
204
+
205
+ if(empty($err_msg)){
206
+
207
+ //nameの空文字チェック
208
+
209
+ validRequired($name, 'your_name');
210
+
211
+ validRequired($email, 'email');
212
+
213
+ validRequired($adress, 'adress');
214
+
215
+ validRequired($phone_number, 'phone_number');
216
+
217
+
218
+
219
+ //emailの形式チェック
220
+
221
+ validEmail($email, 'email');
222
+
223
+
224
+
225
+ //phoneの電話番号チェック
226
+
227
+ validZip($phone_number, 'phone_number');
228
+
229
+
230
+
231
+ }
232
+
233
+
234
+
235
+ }
236
+
237
+
238
+
239
+
240
+
241
+ //===============================
242
+
243
+ // 画面遷移
244
+
245
+ //===============================
246
+
247
+ // 変数の初期化
248
+
249
+ $page_flag = 0;
250
+
251
+ var_dump(1);
252
+
253
+
254
+
255
+ if( !empty($_POST['btn_confirm']) ) {
256
+
257
+ $page_flag = 1;
258
+
259
+ var_dump(2);
260
+
261
+ var_dump($_POST);
262
+
263
+ } elseif( !empty($_POST['btn_submit']) ) {
264
+
265
+ $page_flag = 2;
266
+
267
+ var_dump(3);
268
+
269
+
270
+
271
+ }
272
+
273
+ if(!empty($_POST['btn_submit']) ){
274
+
275
+ $page_flag = 2;
276
+
277
+ var_dump(4);
278
+
279
+ }
280
+
281
+
282
+
283
+ //===============================
284
+
285
+ // その他
286
+
287
+ //===============================
288
+
289
+ // サニタイズ
290
+
291
+ function sanitize($str){
292
+
293
+ return htmlspecialchars($str, ENT_QUOTES);
294
+
295
+ }
296
+
297
+ ?>
298
+
299
+
300
+
301
+
302
+
303
+ <!-- ヘッド -->
304
+
305
+ <?php
306
+
307
+ require('head.php');
308
+
309
+ ?>
310
+
311
+
312
+
313
+ <body classk="pages">
314
+
315
+
316
+
317
+ <!-- ヘッダー -->
318
+
319
+ <?php
320
+
321
+ require('header.php');
322
+
323
+ ?>
324
+
325
+
326
+
327
+ <?php if( $page_flag === 1 ): ?>
328
+
329
+
330
+
331
+ <form mehod="post" action="" class="form-container">
332
+
333
+ <section class="box">
334
+
335
+ <div class="contact">
336
+
337
+ <label>お名前</label>
338
+
339
+ <p><?php echo $_POST['your_name']; ?></p>
340
+
341
+ </div>
342
+
343
+ <div class="contact">
344
+
345
+ <label>住所</label>
346
+
347
+ <p><?php echo $_POST['adress']; ?></p>
348
+
349
+ </div>
350
+
351
+ <div class="contact">
352
+
353
+ <label>電話番号</label>
354
+
355
+ <p><?php echo $_POST['phone_number']; ?></p>
356
+
357
+ </div>
358
+
359
+ <div class="contact">
360
+
361
+ <label>Email</label>
362
+
363
+ <p><?php echo $_POST['email']; ?></p>
364
+
365
+ </div>
366
+
367
+ <div class="contact">
368
+
369
+ <label>質問内容</label>
370
+
371
+ <p><?php echo $_POST['text']; ?></p>
372
+
373
+ </div>
374
+
375
+ <div>
376
+
377
+ <input type="submit" name="btn-back" value="戻る">
378
+
379
+ <input type="submit" name="btn_submit" value="送信">
380
+
381
+
382
+
383
+ <input type="hidden" name="your_name" value="<?php echo $_POST['your_name']; ?>">
384
+
385
+ <input type="hidden" name="adress" value="<?php echo $_POST['adress']; ?>">
386
+
387
+ <input type="hidden" name="phone_number" value="<?php echo $_POST['phone_number']; ?>">
388
+
389
+ <input type="hidden" name="email" value="<?php echo $_POST['email']; ?>">
390
+
391
+ <input type="hidden" name="text" value="<?php echo $_POST['text']; ?>">
392
+
393
+ <input type="hidden" name="btn_confirm">
394
+
395
+ </div>
396
+
397
+ </section>
398
+
399
+ </form>
400
+
401
+
402
+
403
+
404
+
405
+ <?php elseif( $page_flag === 2 ): ?>
406
+
407
+
408
+
409
+ <p>送信しました!</p>
410
+
411
+
412
+
413
+ <?php else: ?>
414
+
415
+
416
+
417
+
418
+
419
+ <form action="" method="post" class="form-container">
420
+
421
+ <section id="main" class="form">
422
+
423
+ <div class="err_msg">
424
+
425
+ <li>お名前:
426
+
427
+ <?php
428
+
429
+ if(!empty($err_msg['your_name'])){
430
+
431
+ echo $err_msg['your_name'];
432
+
433
+ }else{
434
+
435
+ echo 'OKです';
436
+
437
+ }
438
+
439
+
440
+
441
+ ?>
442
+
443
+ </li>
444
+
445
+ <li>住所:
446
+
447
+ <?php
448
+
449
+ if(!empty($err_msg['adress'])){
450
+
451
+ echo $err_msg['adress'];
452
+
453
+ }else{
454
+
455
+ echo 'OKです';
456
+
457
+ }
458
+
459
+ ?>
460
+
461
+ </li>
462
+
463
+ <li>電話番号:
464
+
465
+ <?php
466
+
467
+ if(!empty($err_msg['phone_number'])){
468
+
469
+ echo $err_msg['phone_number'];
470
+
471
+ }else{
472
+
473
+ echo 'OKです';
474
+
475
+ }
476
+
477
+ ?>
478
+
479
+ </li>
480
+
481
+ <li>Email:
482
+
483
+ <?php
484
+
485
+ if(!empty($err_msg['email'])){
486
+
487
+ echo $err_msg['email'];
488
+
489
+ }else{
490
+
491
+ echo 'OKです';
492
+
493
+ }
494
+
495
+ ?>
496
+
497
+ </li>
498
+
499
+ </div>
500
+
501
+
502
+
503
+ <h1>お問い合わせ</h1>
504
+
505
+ <div class="contact">
506
+
507
+ <h3 style="padding-bottom: 10px;">お客様情報</h3>
508
+
509
+
510
+
511
+ お名前  <input type="text" name="your_name" placeholder="金沢 花子" class="form-contact" value="<?php if(!empty($_POST['your_name']) ) echo $_POST['your_name']; ?>"><br>
512
+
513
+
514
+
515
+ ご住所  <input type="text" name="adress" placeholder="金沢市・・・" class="form-contact" value="<?php if(!empty($_POST['adress']) ) echo $_POST['adress']; ?>" ><br>
516
+
517
+
518
+
519
+ 電話番号 <input type="tel" name="phone_number" placeholder="電話番号" class="form-contact" value="<?php if(!empty($_POST['phone_number']) ) echo $_POST['phone_number']; ?>"><br>
520
+
521
+
522
+
523
+ Email   <input type="email" name="email" placeholder="Email" class="form-contact" value="<?php if(!empty($_POST['email']) ) echo $_POST['email']; ?>">
524
+
525
+ </div>
526
+
527
+ <h3>ご質問先<br></h3>
528
+
529
+ <div class="chkbox contact">
530
+
531
+ <input type="checkbox" name="rad1" value="1">有限会社〇
532
+
533
+ <input type="checkbox" name="rad2" value="sekkotuin">〇〇接骨院
534
+
535
+ </div>
536
+
537
+ <div>
538
+
539
+ <h3 style="padding-bottom: 10px;">質問内容<br></h3>
540
+
541
+ <textarea type="text" cols="40" rows="10" name="text" placeholder="質問内容" maxlength="500" style="border: none; font-size: 20px;"></textarea>
542
+
543
+ <p>※全項目の入力をしてから確認ボタンを押してください。</p>
544
+
545
+ </div>
546
+
547
+ <div class="submit contact">
548
+
549
+ <input type="reset" value="クリア">
550
+
551
+ <input type="submit" name="btn_confirm" value="内容を確認する">
552
+
553
+ </div>
554
+
555
+ </section>
556
+
557
+ </form>
558
+
559
+ <?php endif; ?>
560
+
561
+
562
+
563
+ <!-- footer -->
564
+
565
+ <?php
566
+
567
+ require('footer.php');
568
+
569
+ ?>
570
+
571
+
572
+
19
573
  ```
20
574
 
21
- エラーメッセージ
575
+
22
-
23
- ```
576
+
24
-
25
- エラーメッセージはなしです
577
+
26
-
27
- ### 該当のソースコード
28
-
29
- <<< html、バリデーション構文は省きます。 HTML+CSS+PHP を使用しました。>>>
30
-
31
-
32
-
33
- //===============================
34
-
35
- // 画面遷移
36
-
37
- //===============================
38
-
39
- // 変数の初期化
40
-
41
- $page_flag = 0;
42
-
43
- var_dump(1);
44
-
45
-
46
-
47
- if( !empty($_POST['btn_confirm']) ) {
48
-
49
- $page_flag = 1;
50
-
51
- var_dump(2);
52
-
53
- var_dump($_POST);
54
-
55
- } elseif( !empty($_POST['btn_submit']) ) {
56
-
57
- $page_flag = 2;
58
-
59
- var_dump(3);
60
-
61
-
62
-
63
- }
64
-
65
- if(!empty($_POST['btn_submit']) ){
66
-
67
- $page_flag = 2;
68
-
69
- var_dump(4);
70
-
71
- }
72
-
73
-
74
-
75
- //===============================
76
-
77
- // その他
78
-
79
- //===============================
80
-
81
- // サニタイズ
82
-
83
- function sanitize($str){
84
-
85
- return htmlspecialchars($str, ENT_QUOTES);
86
-
87
- }
88
-
89
- ?>
90
-
91
-
92
-
93
-
94
-
95
- <!-- ヘッド -->
96
-
97
- <?php
98
-
99
- require('head.php');
100
-
101
- ?>
102
-
103
-
104
-
105
- <body classk="pages">
106
-
107
-
108
-
109
- <!-- ヘッダー -->
110
-
111
- <?php
112
-
113
- require('header.php');
114
-
115
- ?>
116
-
117
-
118
-
119
- <?php if( $page_flag === 1 ): ?>
120
-
121
-
122
-
123
- <form mehod="post" action="" class="form-container">
124
-
125
- <section class="box">
126
-
127
- <div class="contact">
128
-
129
- <label>お名前</label>
130
-
131
- <p><?php echo $_POST['your_name']; ?></p>
132
-
133
- </div>
134
-
135
- <div class="contact">
136
-
137
- <label>住所</label>
138
-
139
- <p><?php echo $_POST['adress']; ?></p>
140
-
141
- </div>
142
-
143
- <div class="contact">
144
-
145
- <label>電話番号</label>
146
-
147
- <p><?php echo $_POST['phone_number']; ?></p>
148
-
149
- </div>
150
-
151
- <div class="contact">
152
-
153
- <label>Email</label>
154
-
155
- <p><?php echo $_POST['email']; ?></p>
156
-
157
- </div>
158
-
159
- <div class="contact">
160
-
161
- <label>質問内容</label>
162
-
163
- <p><?php echo $_POST['text']; ?></p>
164
-
165
- </div>
166
-
167
- <div>
168
-
169
- <input type="submit" name="btn-back" value="戻る">
170
-
171
- <input type="submit" name="btn_submit" value="送信">
172
-
173
-
174
-
175
- <input type="hidden" name="your_name" value="<?php echo $_POST['your_name']; ?>">
176
-
177
- <input type="hidden" name="adress" value="<?php echo $_POST['adress']; ?>">
178
-
179
- <input type="hidden" name="phone_number" value="<?php echo $_POST['phone_number']; ?>">
180
-
181
- <input type="hidden" name="email" value="<?php echo $_POST['email']; ?>">
182
-
183
- <input type="hidden" name="text" value="<?php echo $_POST['text']; ?>">
184
-
185
- <input type="hidden" name="btn_confirm">
186
-
187
- </div>
188
-
189
- </section>
190
-
191
- </form>
192
-
193
-
194
-
195
-
196
-
197
- <?php elseif( $page_flag === 2 ): ?>
198
-
199
-
200
-
201
- <p>送信しました!</p>
202
-
203
-
204
-
205
- <?php else: ?>
206
-
207
-
208
-
209
-
210
-
211
- <form action="" method="post" class="form-container">
212
-
213
- <section id="main" class="form">
214
-
215
- <div class="err_msg">
216
-
217
- <li>お名前:
218
-
219
- <?php
220
-
221
- if(!empty($err_msg['your_name'])){
222
-
223
- echo $err_msg['your_name'];
224
-
225
- }else{
226
-
227
- echo 'OKです';
228
-
229
- }
230
-
231
-
232
-
233
- ?>
234
-
235
- </li>
236
-
237
- <li>住所:
238
-
239
- <?php
240
-
241
- if(!empty($err_msg['adress'])){
242
-
243
- echo $err_msg['adress'];
244
-
245
- }else{
246
-
247
- echo 'OKです';
248
-
249
- }
250
-
251
- ?>
252
-
253
- </li>
254
-
255
- <li>電話番号:
256
-
257
- <?php
258
-
259
- if(!empty($err_msg['phone_number'])){
260
-
261
- echo $err_msg['phone_number'];
262
-
263
- }else{
264
-
265
- echo 'OKです';
266
-
267
- }
268
-
269
- ?>
270
-
271
- </li>
272
-
273
- <li>Email:
274
-
275
- <?php
276
-
277
- if(!empty($err_msg['email'])){
278
-
279
- echo $err_msg['email'];
280
-
281
- }else{
282
-
283
- echo 'OKです';
284
-
285
- }
286
-
287
- ?>
288
-
289
- </li>
290
-
291
- </div>
292
-
293
-
294
-
295
- <h1>お問い合わせ</h1>
296
-
297
- <div class="contact">
298
-
299
- <h3 style="padding-bottom: 10px;">お客様情報</h3>
300
-
301
-
302
-
303
- お名前  <input type="text" name="your_name" placeholder="金沢 花子" class="form-contact" value="<?php if(!empty($_POST['your_name']) ) echo $_POST['your_name']; ?>"><br>
304
-
305
-
306
-
307
- ご住所  <input type="text" name="adress" placeholder="金沢市・・・" class="form-contact" value="<?php if(!empty($_POST['adress']) ) echo $_POST['adress']; ?>" ><br>
308
-
309
-
310
-
311
- 電話番号 <input type="tel" name="phone_number" placeholder="電話番号" class="form-contact" value="<?php if(!empty($_POST['phone_number']) ) echo $_POST['phone_number']; ?>"><br>
312
-
313
-
314
-
315
- Email   <input type="email" name="email" placeholder="Email" class="form-contact" value="<?php if(!empty($_POST['email']) ) echo $_POST['email']; ?>">
316
-
317
- </div>
318
-
319
- <h3>ご質問先<br></h3>
320
-
321
- <div class="chkbox contact">
322
-
323
- <input type="checkbox" name="rad1" value="1">有限会社〇
324
-
325
- <input type="checkbox" name="rad2" value="sekkotuin">〇〇接骨院
326
-
327
- </div>
328
-
329
- <div>
330
-
331
- <h3 style="padding-bottom: 10px;">質問内容<br></h3>
332
-
333
- <textarea type="text" cols="40" rows="10" name="text" placeholder="質問内容" maxlength="500" style="border: none; font-size: 20px;"></textarea>
334
-
335
- <p>※全項目の入力をしてから確認ボタンを押してください。</p>
336
-
337
- </div>
338
-
339
- <div class="submit contact">
340
-
341
- <input type="reset" value="クリア">
342
-
343
- <input type="submit" name="btn_confirm" value="内容を確認する">
344
-
345
- </div>
346
-
347
- </section>
348
-
349
- </form>
350
-
351
- <?php endif; ?>
352
-
353
-
354
-
355
- <!-- footer -->
356
-
357
- <?php
358
-
359
- require('footer.php');
360
-
361
- ?>
362
578
 
363
579
 
364
580