質問編集履歴

6

接続を修正しました。

2017/07/25 07:05

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  function head($a){
8
8
 
9
- $pdo = new PDO("mysql:dbname=u926285186_sirok;host=mysql.hostinger.jp","u926285186_blog","abc1239500");
9
+ $pdo = new PDO("mysql:dbname=datavase;host=example","example","password");
10
10
 
11
11
  $st = $pdo->query("SELECT * FROM head");
12
12
 

5

ニックネームの枠が抜けていました。

2017/07/25 07:05

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -148,11 +148,11 @@
148
148
 
149
149
 
150
150
 
151
- |id|password|comment|no|
151
+ |id|nickname|password|comment|no|
152
152
 
153
- |:--:|:--:|:--:|:--:|
153
+ |:--:|:--:|:--:|:--:|:--:|
154
154
 
155
- |guest|guest|Test|1|
155
+ |guest|Nickname|guest|Test|1|
156
156
 
157
157
 
158
158
 

4

説明不足を訂正しました。

2017/07/25 04:21

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,8 +1,4 @@
1
- ###MySqlレコドのPHPの扱について
1
+ ###記事ブルにある番号アカウント情報を読み込ませた
2
-
3
- MySQLとPHPでブログのようなシステムを作っています。
4
-
5
- 記事を読み込んで、記事を投稿した人のニックネームを表示するシステムを作ろうとしています。
6
2
 
7
3
  ```PHP
8
4
 
@@ -134,11 +130,35 @@
134
130
 
135
131
  - 記事が入っているテーブルが「blog」
136
132
 
133
+
134
+
135
+ |title|date|content|no|
136
+
137
+ |:--:|:--:|:--:|:-:|
138
+
139
+ |Hello World|2017-07-16|Test|1|
140
+
141
+ |Test|2017-07-17|Test|2|
142
+
143
+
144
+
145
+
146
+
137
147
  - アカウント情報が入っているテーブルが「account」
138
148
 
139
- - 記事の投稿者番号が入っているカラム「no」
140
149
 
150
+
151
+ |id|password|comment|no|
152
+
153
+ |:--:|:--:|:--:|:--:|
154
+
155
+ |guest|guest|Test|1|
156
+
157
+
158
+
159
+
160
+
141
- - 記事の投稿者のニックネームが入ってるカラム「nickname」
161
+ **記事に付けた番号「no」からアカウント番号「no」のニックネームを呼び出したのです。**
142
162
 
143
163
  一応このようになっていますが、PHPの扱いになれていないので、ご了承ください。
144
164
 
@@ -160,7 +180,7 @@
160
180
 
161
181
  ![イメージ説明](cfe811fc804d306a704eb60e3272cfd8.png)
162
182
 
163
- このように記事の投稿者のニックネームを全ての記事に表示したいのです。
183
+
164
184
 
165
185
  ```
166
186
 

3

とりあえず全体的なコードを記載しました。

2017/07/24 15:07

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -8,27 +8,127 @@
8
8
 
9
9
  <?php
10
10
 
11
- $pdo = new PDO("mysql:dbname=datavase;host=example","example","password");
11
+ function head($a){
12
12
 
13
- $st = $pdo->query("SELECT * FROM blog");
13
+ $pdo = new PDO("mysql:dbname=u926285186_sirok;host=mysql.hostinger.jp","u926285186_blog","abc1239500");
14
14
 
15
- while($row = $st->fetch()){
15
+ $st = $pdo->query("SELECT * FROM head");
16
16
 
17
- $no = htmlspecialchars($row["no"]));
17
+ $row = $st->fetch();
18
18
 
19
- $acs = new PDO("mysql:dbname=datavase;host=example.com","example","password");
20
-
21
- $con = $acs->prepare("SELECT * FROM account WHERE no=?");
22
-
23
- $con->execute(array($no));
24
-
25
- $text = $con->fetch();
26
-
27
- echo $text["nickname"];
19
+ echo htmlspecialchars($row[$a]);
28
20
 
29
21
  }
30
22
 
31
23
  ?>
24
+
25
+ <!DOCTYPE html>
26
+
27
+ <html lang="ja">
28
+
29
+ <head>
30
+
31
+ <meta charset="UTF-8">
32
+
33
+ <title><?php head("title"); ?></title>
34
+
35
+ <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no">
36
+
37
+ <link rel="stylesheet" href="style.css">
38
+
39
+ </head>
40
+
41
+ <body>
42
+
43
+ <header>
44
+
45
+ <h1><?php head("title"); ?></h1>
46
+
47
+ </header>
48
+
49
+ <main role="main">
50
+
51
+ <article>
52
+
53
+ <?php
54
+
55
+ $pdo = new PDO("mysql:dbname=datavase;host=example","example","password");
56
+
57
+ $st = $pdo->query("SELECT * FROM blog");
58
+
59
+ while ($row = $st->fetch()) {
60
+
61
+ ?>
62
+
63
+ <div class="list">
64
+
65
+ <div class="image">
66
+
67
+ <a href="#">
68
+
69
+ <img src="image.jpg">
70
+
71
+ <span class="new">NEW</span>
72
+
73
+ </a>
74
+
75
+ </div>
76
+
77
+ <div class="content">
78
+
79
+ <a href="#">
80
+
81
+ <h2><?php echo $row["title"] ?></h2>
82
+
83
+ </a>
84
+
85
+ <div class="content_bottom">
86
+
87
+ <div class="author">
88
+
89
+ <a href="#">
90
+
91
+ <?php
92
+
93
+ $author = htmlspecialchars($row["no"]);
94
+
95
+ $acs = new PDO("mysql:dbname=datavase;host=example","example","password");
96
+
97
+ $con = $acs->prepare("SELECT * FROM account WHERE no=?");
98
+
99
+ $con->execute(array($author));
100
+
101
+ $text = $con->fetch();
102
+
103
+ echo '<img src="author.jpg"><span>'.$text["nickname"].'</span>';
104
+
105
+ ?>
106
+
107
+ </a>
108
+
109
+ </div>
110
+
111
+ <div class="date">
112
+
113
+ <time datetime="<?php echo $row["date"] ?>"><?php echo str_replace('-','.',$row['date']); ?></time>
114
+
115
+ </div>
116
+
117
+ </div>
118
+
119
+ </div>
120
+
121
+ </div>
122
+
123
+ <?php } ?>
124
+
125
+ </article>
126
+
127
+ </main>
128
+
129
+ </body>
130
+
131
+ </html>
32
132
 
33
133
  ```
34
134
 
@@ -39,6 +139,10 @@
39
139
  - 記事の投稿者番号が入っているカラム「no」
40
140
 
41
141
  - 記事の投稿者のニックネームが入っているカラム「nickname」
142
+
143
+ 一応このようになっていますが、PHPの扱いになれていないので、ご了承ください。
144
+
145
+ また、できれば改良策があればご指摘いただくとありがたいです。
42
146
 
43
147
 
44
148
 

2

画像で分かりやすくしました。

2017/07/24 13:38

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -38,7 +38,7 @@
38
38
 
39
39
  - 記事の投稿者番号が入っているカラム「no」
40
40
 
41
- - アカウントのニックネームが入っているカラム「nickname」
41
+ - 記事投稿者のニックネームが入っているカラム「nickname」
42
42
 
43
43
 
44
44
 
@@ -50,6 +50,14 @@
50
50
 
51
51
  他の記事には表示されなくなってしまいます。
52
52
 
53
+ ![イメージ説明](0f95c13915a77b46ffe321ad80083074.png)
54
+
55
+ このようになるのを
56
+
57
+ ![イメージ説明](cfe811fc804d306a704eb60e3272cfd8.png)
58
+
59
+ このように記事の投稿者のニックネームを全ての記事に表示したいのです。
60
+
53
61
  ```
54
62
 
55
63
  ###補足情報(言語/FW/ツール等のバージョンなど)

1

分かりやすくしました。

2017/07/24 13:14

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
File without changes