teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

「index.php」の内容が違っていたので修正致しました。

2015/10/19 14:55

投稿

Tomoaki_Fukuda
Tomoaki_Fukuda

スコア75

title CHANGED
File without changes
body CHANGED
@@ -12,49 +12,91 @@
12
12
  ```
13
13
  コード
14
14
  ```
15
- <!DOCTYPE html>
16
- <html lang="ja">
17
- <head>
18
- <meta chrset="utf-8">
19
- <title>レシピの一覧</title>
20
- </head>
21
- <body>
22
- <h1>レシピの一覧</h1>
23
- <a href="form.html">レシピの新規登録</a>
24
-
25
15
  <?php
26
- $user = "tomoaki";
27
- $pass = "tf6287";
28
- try {
29
- $dbh = new PDO('mysql:host=localhost;dbname=db1;charset=utf8', $user, $pass);
30
- $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
31
- $sql = "SELECT * FROM recipes";
32
- $stmt = $dbh->query($sql);
33
- $result = $stmt->fetchAll(PDO::FETCH_ASSOC);
34
- echo "<table>";
35
- echo "<tr>";
36
- echo "<th>料理名</th><th>予算</th><th>難易度</th>";
37
- echo "</tr>";
38
- foreach ($result as $row) {
16
+ session_start();
39
- echo "<tr>";
40
- echo "<td>".htmlspecialchars($row['recipe_name'],ENT_QUOTES, 'UTF-8')."</td>";
41
- echo "<td>".htmlspecialchars($row['budget'],ENT_QUOTES,'UTF-8')."</td>";
42
- echo "<td>".htmlspecialchars($row['difficulty'],ENT_QUOTES,'UTF-8')."</td>";
43
- echo "<td\n>";
44
- echo "<a href=detail.php?id=" . htmlspecialchars($row['id'], ENT_QUOTES, 'UTF-8') . ">詳細</a>";
45
- echo "</td>";
46
- echo "</tr>";
47
- }
48
- echo "</table>";
49
17
 
18
+ if (!empty($_POST)) {
50
- //$dbh = null;
19
+ //エラー項目の確認
20
+ if ($_POST['name'] == '') {
21
+ $error['name'] = 'blank';
22
+ }
23
+ if ($_POST['mail'] == '') {
24
+ $error['mail'] = 'blank';
25
+ }
26
+ if (strlen($_POST['pass']) < 4) {
51
- //print_r($result);
27
+ $error['pass'] = 'length';
28
+ }
29
+ if ($_POST['pass'] == '') {
52
- $dbh = null;
30
+ $error['pass'] = 'blank';
31
+ }
32
+
53
- } catch (PDOException $e) {
33
+ if (empty($error)) {
34
+ $_SESSION['ドットインストール'] = $_POST;
54
- echo "エラー発生:" . htmlspecialchars($e->getMessage(),ENT_QUOTES, 'UTF-8') . "<br>";
35
+ header('Location: check.php');
55
- die();
36
+ exit();
37
+ }
56
38
  }
39
+ // 書き直し
40
+ if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'rewrite') {
41
+ $_POST = $_SESSION['ドットインストール'];
42
+ $error['rewrite'] = true;
43
+ }
57
44
  ?>
45
+ <!DOCTYPE html>
46
+ <html>
47
+ <head>
48
+ <meta charset="UTF-8" />
49
+ <title>新規会員登録</title>
50
+ </head>
51
+ <body>
52
+ <p>必要事項をご記入ください</p>
53
+ <form action="" method="post" enctype="multipart/form-data">
54
+ <dl>
55
+ <dt>ユーザー名<font color="red"> 必須</font></dt>
56
+ <dd>
57
+ <input type="text" name="name" size="35" maxlength="255" value="<?php
58
+ if (isset($error['name'])) {
59
+ echo htmlspecialchars($_POST['name'], ENT_QUOTES, 'UTF-8');
60
+ }
61
+ ?>">
62
+ <?php if (isset($error['name']) && $error['name'] == 'blank'): ?>
63
+ <p><font color="red">* ユーザー名を入力してください</font></p>
64
+ <?php endif; ?>
65
+ </dd>
66
+ <dt>メールアドレス<font color="red"> 必須</font></dt>
67
+ <dd>
68
+ <input type="text" name="mail" size="35" maxlength="255"
69
+ value="<?php
70
+ if (isset($error['mail'])) {
71
+ echo htmlspecialchars($_POST['mail'], ENT_QUOTES, 'UTF-8');
72
+ }
73
+ ?>">
74
+ <?php if (isset($error['mail']) && $error['mail'] == 'blank'): ?>
75
+ <p><font color="red">* メールアドレスを入力してください</font></p>
76
+ <?php endif; ?>
77
+ <?php if (isset($error['mail']) && $error['mail'] == 'duplicate'): ?>
78
+ <p><font color="red">* 指定されたメールアドレスは既に登録されています</font></p><?php endif; ?>
79
+ </dd>
80
+ <dt>パスワード<font color="red"> 必須</font></dt>
81
+ <dd>
82
+ <input type="password" name="pass" size="10" maxlength="20"
83
+ value="<?php
84
+ if (isset($error['pass'])) {
85
+ echo htmlspecialchars($_POST['pass'], ENT_QUOTES, 'UTF-8');
86
+ }
87
+ ?>">
88
+ <?php if (isset($error['pass']) && $error['pass'] == 'blank'): ?>
89
+ <p><font color="red">* パスワードを入力してください</font></p>
90
+ <?php endif; ?>
91
+ <?php if (isset($error['pass']) && $error['pass'] == 'length'): ?>
92
+ <p><font color="red">* パスワードは4文字以上で入力してください</font></p>
93
+ <?php endif; ?>
94
+ </dd>
95
+ </dl>
96
+ <div><input type="submit" value="入力内容を確認"></div>
97
+ </form>
98
+ </body>
99
+ </html>
58
100
 
59
101
  2.check.php
60
102
  ```

2

データベースの画像を追記。

2015/10/19 14:55

投稿

Tomoaki_Fukuda
Tomoaki_Fukuda

スコア75

title CHANGED
File without changes
body CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  ・データベース
7
7
  phpmyadminをしております。下記添付のような状態です。
8
-
8
+ ![イメージ説明](88ef1079fa8a435d01d8f414e35bfa71.jpeg)
9
9
 
10
10
  コードは下記4つです。
11
11
  1.index.php

1

各コードにファイル名を追記致しました。

2015/10/19 13:44

投稿

Tomoaki_Fukuda
Tomoaki_Fukuda

スコア75

title CHANGED
File without changes
body CHANGED
@@ -7,8 +7,9 @@
7
7
  phpmyadminをしております。下記添付のような状態です。
8
8
 
9
9
 
10
- コードは下記つです。
10
+ コードは下記4つです。
11
- 1.```index.php
11
+ 1.index.php
12
+ ```
12
13
  コード
13
14
  ```
14
15
  <!DOCTYPE html>
@@ -55,8 +56,8 @@
55
56
  }
56
57
  ?>
57
58
 
58
-
59
- 2```check.php
59
+ 2.check.php
60
+ ```
60
61
  コード
61
62
  ```
62
63
  <?php
@@ -113,8 +114,8 @@
113
114
  </body>
114
115
  </html>
115
116
 
116
-
117
- 3```thanks.php
117
+ 3 thanks.php
118
+ ```
118
119
  コード
119
120
  ```
120
121
  <!DOCTYPE html>
@@ -129,7 +130,9 @@
129
130
  </body>
130
131
  </html>
131
132
 
133
+
132
- 4```dbconnect.php
134
+ 4 dbconnect.php
135
+ ```
133
136
  コード
134
137
  ```
135
138
  <?php