質問編集履歴
1
実際のサンプル値を記述しました。また、試したことに追加の記述をしました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,9 +5,31 @@
|
|
5
5
|
### 発生している問題・エラーメッセージ
|
6
6
|
空欄チェックを通るような内容を入力したときにのみ、送信するとフォームに入力したデータが消えてしまいます。エラーメッセージは出ず、1箇所を空欄にするなど空欄チェックをパスできない内容で送信したときには正しく受け取ることができます。
|
7
7
|
|
8
|
+
追記:
|
9
|
+
例
|
10
|
+
メールアドレス:test
|
11
|
+
ニックネーム:test
|
12
|
+
パスワード:test
|
13
|
+
パスワード確認:(空欄)
|
14
|
+
で送信するとvar_dump($_POST)は
|
15
|
+
```
|
16
|
+
array(4) { ["email"]=> string(4) "test" ["name"]=> string(4) "test" ["password"]=> string(4) "test" ["passwordCheck"]=> string(0) "" }
|
17
|
+
```
|
18
|
+
|
19
|
+
メールアドレス:test
|
20
|
+
ニックネーム:test
|
21
|
+
パスワード:test
|
22
|
+
パスワード確認:test
|
23
|
+
で送信するとvar_dump($_POST)は
|
24
|
+
```
|
25
|
+
array(0) { }
|
26
|
+
```
|
27
|
+
となってしまいます。
|
8
28
|
### 該当のソースコード
|
9
29
|
|
10
|
-
```
|
30
|
+
```php
|
31
|
+
signup.php
|
32
|
+
|
11
33
|
<?php
|
12
34
|
session_start();
|
13
35
|
require_once('dbconnect.php');
|
@@ -78,12 +100,42 @@
|
|
78
100
|
</body>
|
79
101
|
</html>
|
80
102
|
```
|
103
|
+
```PHP
|
104
|
+
insert.php
|
81
105
|
|
106
|
+
<?php
|
107
|
+
session_start();
|
108
|
+
require_once('dbconnect.php');
|
109
|
+
|
110
|
+
if(isset($_SESSION['signup'])){
|
111
|
+
$statement = $db->prepare('INSERT INTO customers
|
112
|
+
SET name=?, email=?, password=?, created=NOW()');
|
113
|
+
$statement->execute(array(
|
114
|
+
$_SESSION['signup']['name'],
|
115
|
+
$_SESSION['signup']['email'],
|
116
|
+
sha1($_SESSION['signup']['password'])
|
117
|
+
));
|
118
|
+
unset($_SESSION['signup']);
|
119
|
+
header('location: post.php');
|
120
|
+
exit();
|
121
|
+
|
122
|
+
}else{
|
123
|
+
header('location:signup.php');
|
124
|
+
exit();
|
125
|
+
}
|
126
|
+
?>
|
127
|
+
```
|
82
128
|
### 試したこと
|
83
129
|
|
84
130
|
echo var_dump($_POST)
|
85
131
|
で$_POSTの中身を確認していますが、データが空になってしまうときは空欄チェックに入る前にもうすでに空になっており、なぜそうなっているのか理由がわかりません。
|
86
132
|
空欄チェックをなくしたり、1箇所空欄にしたりすると正常に受け取れます。
|
87
133
|
|
134
|
+
追記:
|
135
|
+
header関数を削除すると正常に受け取れるようです。
|
136
|
+
|
137
|
+
|
138
|
+
|
139
|
+
|
88
140
|
### 補足情報(FW/ツールのバージョンなど)
|
89
141
|
環境:MAMP、ローカル環境、PHP 7.3.11
|