質問編集履歴

2

修正

2021/01/18 04:52

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -4,10 +4,6 @@
4
4
 
5
5
  xfreeでデータベースを用いたポートフォリオをデプロイしたいです。
6
6
 
7
- ↓現状
8
-
9
- URL : http://utan.php.xdomain.jp/mini_bbs/join/
10
-
11
7
 
12
8
 
13
9
  ### 発生している問題・エラーメッセージ
@@ -333,7 +329,3 @@
333
329
 
334
330
 
335
331
  ### 補足情報(FW/ツールのバージョンなど)
336
-
337
- githubで公開しました。
338
-
339
- https://github.com/OHMORIYUSUKE/mini_bbs

1

修正

2021/01/18 04:52

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -50,6 +50,278 @@
50
50
 
51
51
  ```
52
52
 
53
+ ```ここに言語名を入力
54
+
55
+ <?php
56
+
57
+ session_start();
58
+
59
+ require('../dbconenect.php');
60
+
61
+
62
+
63
+ if(!empty($_POST)){
64
+
65
+ //エラー判定
66
+
67
+ if($_POST['name'] === ''){
68
+
69
+ $errer['name']='blank';
70
+
71
+ }
72
+
73
+ if($_POST['email'] === ''){
74
+
75
+ $errer['email']='blank';
76
+
77
+ }
78
+
79
+ if(strlen($_POST['password']) <4 ){
80
+
81
+ $errer['password']='length';
82
+
83
+ }
84
+
85
+ if($_POST['password'] === ''){
86
+
87
+ $errer['password']='blank';
88
+
89
+ }
90
+
91
+ //画像拡張子判定
92
+
93
+ $fileName = $_FILES['image']['name'];
94
+
95
+ if(!empty($fileName)){
96
+
97
+ $ext = substr($fileName, -3);
98
+
99
+ if($ext != 'jpg' && $ext != 'png' && $ext != 'gif'){
100
+
101
+ $errer['image'] = 'type';
102
+
103
+ }
104
+
105
+ }
106
+
107
+
108
+
109
+ //アカウント重複防止
110
+
111
+ if(empty($error)){
112
+
113
+ $member = $db->prepare('SELECT COUNT(*) AS cnt FROM members WHERE email=?');
114
+
115
+ $member->execute(array($_POST['email']));
116
+
117
+ $recode = $member->fetch();
118
+
119
+ //$recodeは0,1を返す
120
+
121
+ if($recode['cnt'] > 0){
122
+
123
+ $errer['email'] = 'duplicate';
124
+
125
+ }
126
+
127
+ }
128
+
129
+
130
+
131
+
132
+
133
+ if(empty($errer)){
134
+
135
+ //画像保存//現在時刻を付加して名前がかぶらないようにする
136
+
137
+ $image = date('YmdHis').$_FILES['image']['name'];
138
+
139
+ move_uploaded_file($_FILES['image']['tmp_name'],'../member_picture/'.$image);
140
+
141
+
142
+
143
+ $_SESSION['join'] = $_POST;
144
+
145
+
146
+
147
+ $_SESSION['join']['image'] = $image;
148
+
149
+
150
+
151
+ header('Location:check.php');
152
+
153
+ exit();
154
+
155
+ }
156
+
157
+ }
158
+
159
+ //rewriteがurlで渡されたらフォームに入力しておく
160
+
161
+ if($_REQUEST['action'] == 'rewrite'){
162
+
163
+ $_POST = $_SESSION['join'];
164
+
165
+ }
166
+
167
+ ?>
168
+
169
+ <!DOCTYPE html>
170
+
171
+ <html lang="ja">
172
+
173
+ <head>
174
+
175
+ <meta charset="UTF-8">
176
+
177
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
178
+
179
+ <meta http-equiv="X-UA-Compatible" content="ie=edge">
180
+
181
+ <title>会員登録</title>
182
+
183
+
184
+
185
+ <link rel="stylesheet" href="../style.css" />
186
+
187
+ </head>
188
+
189
+ <body>
190
+
191
+ <div id="wrap">
192
+
193
+ <div id="head">
194
+
195
+ <h1>会員登録</h1>
196
+
197
+ </div>
198
+
199
+
200
+
201
+ <div id="content">
202
+
203
+ <p>次のフォームに必要事項をご記入ください。</p>
204
+
205
+ <form action="" method="post" enctype="multipart/form-data">
206
+
207
+ <dl>
208
+
209
+ <dt>ニックネーム<span class="required">必須</span></dt>
210
+
211
+ <dd>
212
+
213
+ <input type="text" name="name" size="35" maxlength="255" value="<?php print(htmlspecialchars($_POST['name'],ENT_QUOTES)); ?>" />
214
+
215
+ </dd>
216
+
217
+ <?php
218
+
219
+ if ($errer['name'] === 'blank'):
220
+
221
+ ?>
222
+
223
+ <p class="error">*ニックネームを入力してください。</p>
224
+
225
+ <?php endif;?>
226
+
227
+ <dt>メールアドレス<span class="required">必須</span></dt>
228
+
229
+ <dd>
230
+
231
+ <input type="text" name="email" size="35" maxlength="255" value="<?php print(htmlspecialchars($_POST['email'],ENT_QUOTES)); ?>" />
232
+
233
+ <?php
234
+
235
+ if ($errer['email'] === 'blank'):
236
+
237
+ ?>
238
+
239
+ <p class="error">*メールアドレスを入力してください。</p>
240
+
241
+ <?php endif;?>
242
+
243
+ <?php
244
+
245
+ if ($errer['email'] === 'duplicate'):
246
+
247
+ ?>
248
+
249
+ <p class="error">*メールアドレスはすでに登録されています。</p>
250
+
251
+ <?php endif;?>
252
+
253
+ <dt>パスワード<span class="required">必須</span></dt>
254
+
255
+ <dd>
256
+
257
+ <input type="password" name="password" size="10" maxlength="20" value="<?php print(htmlspecialchars($_POST['password'],ENT_QUOTES)); ?>" />
258
+
259
+ </dd>
260
+
261
+ <?php
262
+
263
+ if ($errer['password'] === 'blank'):
264
+
265
+ ?>
266
+
267
+ <p class="error">*パスワードを入力してください。</p>
268
+
269
+ <?php endif;?>
270
+
271
+ <?php
272
+
273
+ if ($errer['password'] === 'length'):
274
+
275
+ ?>
276
+
277
+ <p class="error">*パスワードが短すぎます。</p>
278
+
279
+ <?php endif;?>
280
+
281
+ <dt>写真など</dt>
282
+
283
+ <dd>
284
+
285
+ <input type="file" name="image" size="35" value="test" />
286
+
287
+
288
+
289
+ <?php
290
+
291
+ if($errer['image'] === 'type'):?>
292
+
293
+ <p class="error">画像のみアップロードできます</p>
294
+
295
+ <?php endif; ?>
296
+
297
+ <?php
298
+
299
+ if(!empty($errer)):
300
+
301
+ ?>
302
+
303
+ <p class="error">画像を再度アップロードしてください</p>
304
+
305
+ <?php endif;?>
306
+
307
+ </dd>
308
+
309
+ </dl>
310
+
311
+ <div><input type="submit" value="入力内容を確認する" /></div>
312
+
313
+ </form>
314
+
315
+ </div>
316
+
317
+ </body>
318
+
319
+ </html>
320
+
321
+
322
+
323
+ ```
324
+
53
325
 
54
326
 
55
327
  ### 試したこと
@@ -61,3 +333,7 @@
61
333
 
62
334
 
63
335
  ### 補足情報(FW/ツールのバージョンなど)
336
+
337
+ githubで公開しました。
338
+
339
+ https://github.com/OHMORIYUSUKE/mini_bbs