回答編集履歴
1
修正
answer
CHANGED
@@ -1,5 +1,10 @@
|
|
1
|
+
```
|
2
|
+
Notice: Undefined index: hoge in /Applications/XAMPP/xamppfiles/htdocs/otoiawase/ramenn.php on line xx
|
3
|
+
```
|
4
|
+
このエラーは`$_POST`や`$_GET`で値を受け取るときによく発生するエラーです。このエラーは**定義されていない配列の要素、もしくは変数を使ったときに発生する**エラーです。
|
5
|
+
たとえば、`ramenn.php`の33行目にある`$name = $_POST['gender'];`という処理ですが、ramenn.phpに直接アクセスした場合、$_POST['gender']が未定義の状態になりますから、`Notice: Undefined index: hoge`というエラーが発生します。
|
1
|
-
この
|
6
|
+
つまりこのエラーは、**使おうとしている配列の要素、もしくは変数が定義されているかどうかを確認することで解決することができ**ます。
|
2
|
-
|
7
|
+
以上のことから、`ramenn.php`は以下のようになると思います。
|
3
8
|
```PHP
|
4
9
|
<?php
|
5
10
|
ini_set("display_errors", 1);
|
@@ -20,33 +25,35 @@
|
|
20
25
|
<form>
|
21
26
|
入力項目です。
|
22
27
|
<?php
|
28
|
+
if (!empty($_POST["name"])) {
|
23
|
-
|
29
|
+
$name = $_POST['name'];
|
24
|
-
|
30
|
+
print $name . 'さんこんにちは';
|
31
|
+
}
|
25
32
|
?>
|
26
|
-
|
27
|
-
|
28
33
|
<p>お名前:</p>
|
29
34
|
<?php
|
35
|
+
if (!empty($_POST['name'])) {
|
30
|
-
|
36
|
+
$name = $_POST['name'];
|
31
|
-
|
37
|
+
if ($name === "") {
|
32
|
-
|
38
|
+
print 'お名前が入力されていません。';
|
33
|
-
|
39
|
+
} else {
|
34
|
-
|
40
|
+
print $name . 'さん';
|
41
|
+
}
|
35
42
|
}
|
36
43
|
?>
|
37
44
|
|
38
45
|
<p>性別:</p>
|
39
|
-
<p>
|
40
|
-
|
46
|
+
<?php
|
41
|
-
|
47
|
+
if (!empty($_POST['gender'])) {
|
48
|
+
$gender = $_POST['gender'];
|
42
|
-
|
49
|
+
if (!empty($_POST['gender']) && ($_POST['gender']) == "男" || $_POST['gender'] == "女") {
|
43
|
-
|
50
|
+
print "性別は";
|
44
|
-
|
51
|
+
print $_POST['gender'];
|
45
|
-
|
52
|
+
} else {
|
46
|
-
|
53
|
+
print '性別が入力されていません';
|
47
|
-
}
|
48
54
|
}
|
55
|
+
}
|
49
|
-
|
56
|
+
?>
|
50
57
|
|
51
58
|
<p>年齢:</p>
|
52
59
|
<?php
|
@@ -70,7 +77,7 @@
|
|
70
77
|
|
71
78
|
<p>Eメールアドレス:</p>
|
72
79
|
<?php
|
73
|
-
if (!empty($_POST[
|
80
|
+
if (!empty($_POST['mail'])) {
|
74
81
|
$mail = $_POST['mail'];
|
75
82
|
if ($mail === "") {
|
76
83
|
print 'メールが入力されていません';
|
@@ -101,7 +108,7 @@
|
|
101
108
|
|
102
109
|
<p>お好きなトッピング:</p>
|
103
110
|
<?php
|
104
|
-
if (!empty($_POST[
|
111
|
+
if (!empty($_POST['top'])) {
|
105
112
|
$top = $_POST['top'];
|
106
113
|
if (empty($top)) {
|
107
114
|
print '好きなトッピングを入力してください';
|
@@ -115,7 +122,7 @@
|
|
115
122
|
|
116
123
|
<p>ご感想:</p>
|
117
124
|
<?php
|
118
|
-
if (!empty($_POST[
|
125
|
+
if (!empty($_POST['kan'])) {
|
119
126
|
$kan = $_POST['kan'];
|
120
127
|
if ($kan === "") {
|
121
128
|
print '';
|