質問編集履歴

1

index.phpの他にconfirm.phpのコードも記載しました。

2018/08/18 04:42

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
1
  お問い合わせフォームを作っていて、入力内容のいずれかに空白があった場合に送信ボタンクリック時にエラーメッセージを出すようにしたいと思っています。
2
2
 
3
- 各サイトを参考にしながら以下のようにコードを組んでみたのですが、エラーメッセージを出すための制御文が動作していないようで、空白があった場合でもそのまま確認画面へと進んでしまいます(index.php → confirm.php → sent.phpと移動するように作っており、以下index.phpのコードです)。
3
+ 各サイトを参考にしながら以下のようにコードを組んでみたのですが、エラーメッセージを出すための制御文が動作していないようで、空白があった場合でもそのまま確認画面へと進んでしまいます(index.php → confirm.php → sent.phpと移動するように作っており、以下のコードの1つ目がindex.php、2つ目がconfirm.phpになります)。
4
4
 
5
5
  試しにif(isset($_POST['submit']) && $_POST['submit'] === '送信')の部分を消すと今度は「お名前を入力してください。」などのメッセージが最初から表示されるようになります。そのためこのif文がおかしいような気がするのですが修正方法がわかりません。
6
6
 
@@ -129,3 +129,111 @@
129
129
  </html>
130
130
 
131
131
  ```
132
+
133
+
134
+
135
+ ```PHP
136
+
137
+ <?php
138
+
139
+ $name = '';
140
+
141
+ if(isset($_POST['name'])){
142
+
143
+ $name = $_POST['name'];
144
+
145
+ }
146
+
147
+ $mail = '';
148
+
149
+ if(isset($_POST['mail'])){
150
+
151
+ $mail = $_POST['mail'];
152
+
153
+ }
154
+
155
+ $inquiry = '';
156
+
157
+ if(isset($_POST['inquiry'])){
158
+
159
+ $inquiry = $_POST['inquiry'];
160
+
161
+ }
162
+
163
+
164
+
165
+ function h($s) {
166
+
167
+ return htmlspecialchars($s, ENT_QUOTES, "UTF-8");
168
+
169
+ }
170
+
171
+ ?>
172
+
173
+
174
+
175
+ <!DOCTYPE html>
176
+
177
+ <html lang="ja">
178
+
179
+ <head>
180
+
181
+ <meta charset="UTF-8">
182
+
183
+ <title>お問い合わせフォーム</title>
184
+
185
+ <link rel="stylesheet" href="style.css">
186
+
187
+ </head>
188
+
189
+ <body>
190
+
191
+ <div class="main">
192
+
193
+ <div class="contact-form">
194
+
195
+ <div class="thanks-message">以下の内容でよろしいですか?</div>
196
+
197
+ <form method="post" action="sent.php">
198
+
199
+ <input type="hidden" name="name" value="<?php echo h($name) ?>">
200
+
201
+ <input type="hidden" name="mail" value="<?php echo h($mail) ?>" >
202
+
203
+ <input type="hidden" name="inquiry" value="<?php echo h($inquiry) ?>">
204
+
205
+ <div class="form-title">入力内容</div>
206
+
207
+
208
+
209
+ <div class="form-item">●お名前</div>
210
+
211
+ <?php echo h($name) ?>
212
+
213
+
214
+
215
+ <div class="form-item">●メールアドレス</div>
216
+
217
+ <?php echo h($mail) ?>
218
+
219
+
220
+
221
+ <div class="form-item">●お問い合わせ内容</div>
222
+
223
+ <?php echo h($inquiry) ?>
224
+
225
+ <br>
226
+
227
+ <input type="button" value="戻る" onclick="history.back()">
228
+
229
+ <input type="submit" value="送信する">
230
+
231
+ </form>
232
+
233
+ </div>
234
+
235
+ </div>
236
+
237
+ </body>
238
+
239
+ ```