質問編集履歴

3

誤字

2017/02/21 18:24

投稿

tatata-ta
tatata-ta

スコア13

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- ログインフォームを作成中です(入力内容をデータベースに保存)
1
+ 新規登録画面を作成中です(入力内容をデータベースに保存)
2
2
 
3
3
  フォームで受け取ったデータを作成済みのテーブルに登録したいのですが、
4
4
 

2

文法の修正

2017/02/21 18:24

投稿

tatata-ta
tatata-ta

スコア13

test CHANGED
File without changes
test CHANGED
@@ -1,257 +1,239 @@
1
+ ログインフォームを作成中です(入力内容をデータベースに保存)
2
+
1
- 独学中です。フォームで受け取ったデータを作成済みのテーブルに登録したいのですが、
3
+ フォームで受け取ったデータを作成済みのテーブルに登録したいのですが、
2
4
 
3
5
  うまくいきません。
4
6
 
5
-
6
-
7
- 使用しているPC:mac
8
-
9
- 環境はxamppとecripseを使っています。
10
-
11
-
12
-
13
7
  調べてるうちにどんどんわからなくなって質問させていただきました。
14
8
 
15
9
  どこがおかしくて、データが登録されないのか指摘していただけると幸いです。
16
10
 
17
11
 
18
12
 
13
+
14
+
15
+ 【環境】
16
+
17
+ PC:mac
18
+
19
+ xampp
20
+
21
+ ecripse
22
+
23
+ mysql(local)
24
+
25
+
26
+
27
+ 【質問】
28
+
29
+ 作成した入力フォーム(ニックネーム、パスワード、メールアドレス)
30
+
31
+ へ入力されたデータを phpmyadmin 上に作成したテーブル(user)に
32
+
33
+ 登録したいのですが、データがphpmyadminに登録されません。
34
+
19
- 以下のような処理を行いたいのですが、
35
+ 行いたい処理は以下通りです
36
+
20
-
37
+ ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
38
+
21
-
39
+ 処理1
40
+
22
-
41
+ 入力されたニックネーム、メールアドレス、パスワードを受け取り、変数に入れる。
42
+
43
+
44
+
45
+ 処理2
46
+
47
+ データベースに接続する(PDOを使う)
48
+
49
+
50
+
51
+ 処理3
52
+
53
+ データベース(userテーブル)に新規登録する。
54
+
55
+
56
+
57
+ 処理4
58
+
59
+ signup_complete.phpに画面遷移する。
60
+
61
+ ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
62
+
63
+ フォームに入力された内容が、phpmyadmin上で確認できれば
64
+
65
+ 良いのですが、どの処理の段階で失敗しているのか・・・
66
+
67
+ INSERT文のどこかに問題があるのか
68
+
69
+ 変数の定義の仕方が間違っているのか
70
+
71
+ 原因がつかめずにいます。
72
+
73
+
74
+
75
+ 記述しましたコードを貼りますので
76
+
77
+ 原因と考えられるところを教えていただけないでしょうか?
78
+
79
+
80
+
81
+ ※ブラウザ上でフォームに入力してから、signup_complete.phpに画面遷移するまでエラーは出ません。しかし、phpmyadminのテーブルには反映されないということです。
82
+
83
+
84
+
85
+ ここから以下、自分の記述したコードです。↓
86
+
87
+
88
+
89
+ ===================================
90
+
91
+ ```PHP
92
+
23
- <?php
93
+ <?php
24
-
25
-
26
94
 
27
95
  require_once('config.php');
28
96
 
29
97
 
30
98
 
31
- if ($_SERVER['REQUEST_METHOD'] != 'POST') {
32
-
33
-
34
-
35
- // 初めて画面にアクセスした時の処理
36
-
37
-
38
-
39
- } else {
40
-
41
-
42
-
43
- // フォームからサブミットされた時の処理
44
-
45
-
46
-
47
-
48
-
49
-
50
-
51
- // 処理1
52
-
53
-
54
-
55
- // 入力されたニックネーム、メールアドレス、パスワードを受け取り、変数に入れる。
56
-
57
-
58
-
59
-
60
-
61
-
62
-
63
- // 処理2
64
-
65
-
66
-
67
- // データベースに接続する(PDOを使う)
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
- // 処理3
76
-
77
-
78
-
79
- // データベース(userテーブル)に新規登録する。
80
-
81
-
82
-
83
-
84
-
85
-
86
-
87
- // 処理4
88
-
89
-
90
-
91
- // signup_complete.phpに画面遷移する。
92
-
93
-
94
-
95
- exit;
99
+ if ($_SERVER['REQUEST_METHOD'] !='POST') {
100
+
101
+ // 初めて画面にアクセスした時の処理
102
+
103
+ }else{
104
+
105
+ // フォームからサブミットされた時の処理
106
+
107
+
108
+
109
+ //処理1
110
+
111
+ //入力された値を変数に代入する
112
+
113
+
114
+
115
+ if(isset($_POST['user_screen_name'])){
116
+
117
+ $user_screen_name = $_POST['user_screen_name'];
118
+
119
+ }
120
+
121
+ if(isset($_POST['user_password'])){
122
+
123
+ $user_password = $_POST['user_password'];
124
+
125
+ }
126
+
127
+ if(isset($_POST['user_email'])){
128
+
129
+ $user_email = $_POST['user_email'];
130
+
131
+ }
132
+
133
+
134
+
135
+ //処理2
136
+
137
+ //データベースにPDOで接続
138
+
139
+ //以下4行はdbへの接続するための情報
140
+
141
+ $host = "localhost"; //データベース サーバー
142
+
143
+ $user = "****"; //テーダベースユーザー名
144
+
145
+ $pass = "*****"; //接続パスワード
146
+
147
+ $db = "mykakugen"; //データベース
148
+
149
+
150
+
151
+ $param = "mysql:dbname=".$db.";host=".$host;
152
+
153
+
154
+
155
+ //あらかじめ定義したユーザー名や、パスワードを使ってPDOでdbに接続
156
+
157
+ $pdo = new PDO($param,$user,$pass);
158
+
159
+
160
+
161
+ //データベースにアクセスする文字コードをutf8に設定
162
+
163
+ $pdo->query('SET NAMES utf8;');
164
+
165
+
166
+
167
+ //処理3
168
+
169
+ //db(user)に登録する
170
+
171
+ //$stmt = ステートメントの略。dbに対する1つの要求、処理の単位
172
+
173
+ $stmt = $pdo->prepare("INSERT INTO user (
174
+
175
+ user_screen_name,
176
+
177
+ user_password,
178
+
179
+ user_email,
180
+
181
+ created_at,
182
+
183
+ )VALUES(
184
+
185
+ :user_screen_name,
186
+
187
+ :user_password,
188
+
189
+ :user_email,
190
+
191
+ :now(),
192
+
193
+ )");
194
+
195
+
196
+
197
+ //ex:)$stmt->bindValue(':id', $_GET["id"], PDO::PARAM_INT);
198
+
199
+ $stmt->bindValue(':user_screen_name',$_POST["user_screen_name"],PDO::PARAM_STR);
200
+
201
+ $stmt->bindValue(':user_password',$_POST["user_password"],PDO::PARAM_STR);
202
+
203
+ $stmt->bindValue(':user_email',$_POST["user_email"],PDO::PARAM_STR);
204
+
205
+ $stmt->bindValue(':created_at',$_POST["created_at"],PDO::PARAM_STR);
206
+
207
+
208
+
209
+ $flag = $stmt->execute();
210
+
211
+
212
+
213
+ unset($pdo);
214
+
215
+
216
+
217
+ //処理4
218
+
219
+ //signup_complete.phpに移動する
220
+
221
+
222
+
223
+ header("Location: signup_complete.php");
224
+
225
+
226
+
227
+ exit;
228
+
229
+
96
230
 
97
231
 
98
232
 
99
233
  }
100
234
 
101
-
102
-
103
235
  ?>
104
236
 
105
-
106
-
107
-
108
-
109
- ここから以下、自分の記述したコードです。↓
110
-
111
- <?php
112
-
113
- require_once('config.php');
114
-
115
-
116
-
117
- if ($_SERVER['REQUEST_METHOD'] !='POST') {
118
-
119
- // 初めて画面にアクセスした時の処理
120
-
121
- }else{
122
-
123
- // フォームからサブミットされた時の処理
124
-
125
-
126
-
127
- //処理1
128
-
129
- //入力された値を変数に代入する
130
-
131
-
132
-
133
- if(isset($_POST['user_screen_name'])){
134
-
135
- $user_screen_name = $_POST['user_screen_name'];
136
-
137
- }
138
-
139
- if(isset($_POST['user_password'])){
140
-
141
- $user_password = $_POST['user_password'];
142
-
143
- }
144
-
145
- if(isset($_POST['user_email'])){
146
-
147
- $user_email = $_POST['user_email'];
148
-
149
- }
150
-
151
-
152
-
153
- //処理2
154
-
155
- //データベースにPDOで接続
156
-
157
- //以下4行はdbへの接続するための情報
158
-
159
- $host = "localhost"; //データベース サーバー
160
-
161
- $user = "****"; //テーダベースユーザー名
162
-
163
- $pass = "*****"; //接続パスワード
164
-
165
- $db = "mykakugen"; //データベース名
166
-
167
-
168
-
169
- $param = "mysql:dbname=".$db.";host=".$host; //←これ何?
170
-
171
-
172
-
173
- //あらかじめ定義したユーザー名や、パスワードを使ってPDOでdbに接続
174
-
175
- $pdo = new PDO($param,$user,$pass);
176
-
177
-
178
-
179
- //データベースにアクセスする文字コードをutf8に設定
180
-
181
- $pdo->query('SET NAMES utf8;');
182
-
183
-
184
-
185
- //処理3
186
-
187
- //db(user)に登録する
188
-
189
- //$stmt = ステートメントの略。dbに対する1つの要求、処理の単位
190
-
191
- $stmt = $pdo->prepare("INSERT INTO user (
192
-
193
- user_screen_name,
194
-
195
- user_password,
196
-
197
- user_email,
198
-
199
- created_at,
200
-
201
- )VALUES(
202
-
203
- :user_screen_name,
204
-
205
- :user_password,
206
-
207
- :user_email,
208
-
209
- :now(),
210
-
211
- )");
212
-
213
-
214
-
215
- //ex:)$stmt->bindValue(':id', $_GET["id"], PDO::PARAM_INT);
216
-
217
- $stmt->bindValue(':user_screen_name',$_POST["user_screen_name"],PDO::PARAM_STR);
218
-
219
- $stmt->bindValue(':user_password',$_POST["user_password"],PDO::PARAM_STR);
220
-
221
- $stmt->bindValue(':user_email',$_POST["user_email"],PDO::PARAM_STR);
222
-
223
- $stmt->bindValue(':created_at',$_POST["created_at"],PDO::PARAM_STR);
224
-
225
-
226
-
227
- $flag = $stmt->execute();
228
-
229
-
230
-
231
- unset($pdo);
232
-
233
-
234
-
235
- //処理4
236
-
237
- //signup_complete.phpに移動する
238
-
239
-
240
-
241
- header("Location: signup_complete.php");
242
-
243
-
244
-
245
- exit;
246
-
247
-
248
-
249
-
250
-
251
- }
252
-
253
- ?>
254
-
255
237
  <!DOCTYPE html>
256
238
 
257
239
  <html lang=ja>
@@ -378,8 +360,10 @@
378
360
 
379
361
  </html>
380
362
 
381
-
363
+ ```
364
+
382
-
365
+ ===================================
383
-
384
-
366
+
367
+
368
+
385
- どうかよろしくお願いいたします。
369
+ 回答の程、宜しくお願いいたします。

1

誤字

2017/02/21 17:32

投稿

tatata-ta
tatata-ta

スコア13

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- 独学中です。フォームで受け取ったデータを作成済みのタベースに登録したいのですが、
1
+ 独学中です。フォームで受け取ったデータを作成済みのブルに登録したいのですが、
2
2
 
3
3
  うまくいきません。
4
4