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

質問編集履歴

1

phpコードも追加しました

2020/09/18 05:15

投稿

fuku-to-mako
fuku-to-mako

スコア1

title CHANGED
File without changes
body CHANGED
@@ -7,15 +7,78 @@
7
7
  色が変わりません。
8
8
 
9
9
  ### 該当のソースコード
10
+ ```PHP, HTML,CSS
11
+ <?php
12
+ $USER = "user";
13
+ $PW = "password";
14
+
15
+ $dbh = new PDO('mysql:host=localhost;dbname=data;charset=utf8', $USER, $PW);
16
+
17
+ // GETで現在のページ数を取得する(未入力の場合は1を挿入)
18
+ if (isset($_GET['page'])) {
19
+ $page = (int)$_GET['page'];
20
+ } else {
21
+ $page = 1;
22
+ }
23
+
24
+ // スタートのポジションを計算する
25
+ if ($page > 1) {
26
+ // 例:2ページ目の場合は、『(2 × 30) - 30 = 10』
27
+ $start = ($page * 30) - 30;
28
+ } else {
29
+ $start = 0;
30
+ }
31
+
32
+ $sql = $dbh->prepare("SELECT*FROM tableName ORDER BY alphabet ASC LIMIT {$start}, 30");
33
+ $sql->execute();
34
+ $result = $sql->fetchAll(PDO::FETCH_ASSOC);
35
+
36
+ // postsテーブルのデータ件数を取得する
37
+ $page_num = $dbh->prepare("
38
+ SELECT COUNT(*) id
39
+ FROM tableName
40
+ ");
41
+ $page_num->execute();
42
+ $page_num = $page_num->fetchColumn();
43
+
44
+
45
+ // ページネーションの数を取得する
46
+ $pagination = ceil($page_num / 30);
47
+
48
+
49
+ // postsテーブルのデータ件数を取得する
50
+ $sql1 = "SELECT COUNT(*) id FROM tableName";
51
+ $page_num = $dbh->prepare($sql1);
52
+ $page_num->execute();
53
+ $page_num = $page_num->fetchColumn();
54
+
10
- ◆html
55
+ ?>
56
+ <h1>CLIENT LIST</h1>
57
+
58
+ <table>
59
+ <tr>
60
+ <th>ID</th>
61
+ <th>COMPANY</th>
62
+ <th>NAME</th>
63
+ </tr>
64
+
65
+ <?php foreach($result as $row){?>
66
+ <tr>
67
+ <td><?=$row['id'] ?></td>
68
+ <td><?=$row['company']?></td>
69
+ <td><?=$row['name']?></td>
70
+ </tr>
71
+ <?php } ?>
72
+ </table>
73
+
11
- <!-- ページネーション -->
74
+ <!-- ページネーション -->
12
75
  <?php for ($x=1; $x <= $pagination ; $x++) { ?>
13
76
  <ul class="pagination">
14
77
  <li><a id="page" href="?page=<?php echo $x ?>"><?php echo $x; ?></a></li></ul>
15
-     <?php } // End of for ?>
78
+ <?php } // End of for ?>
16
- 四角で囲まれた番号1~8までが表示されます。
79
+ *四角で囲まれた番号1~8までが表示されます。
17
80
 
18
- css
81
+ CSS
19
82
  ul.pagination li a.active{
20
83
  background-color: #ddd;
21
84
  }
@@ -41,11 +104,6 @@
41
104
  ul.pagination li a:hover{
42
105
  background-color: #ddd;
43
106
  }
44
-
45
-
46
-
47
- ```ここに言語名を入力
48
- ソースコード
49
107
  ```
50
108
 
51
109
  ### 試したこと