質問編集履歴

2

コードの変更あり

2016/08/14 01:11

投稿

alkeran
alkeran

スコア29

test CHANGED
File without changes
test CHANGED
@@ -10,113 +10,47 @@
10
10
 
11
11
  <?php
12
12
 
13
- error_reporting(E_ALL ^ E_NOTICE ^ E_DEPRECATED);
13
+ $dbname = 'mysql_dbname';
14
14
 
15
15
 
16
16
 
17
- // データベースサーバへの接続
17
+ if (!mysql_connect('mysql_host', 'mysql_user', 'mysql_password')) {
18
18
 
19
- $db = mysql_connect('$dbhost', '$dbuser', '$dbpass');
19
+ echo 'Could not connect to mysql';
20
20
 
21
-
22
-
23
- // テーブルの一覧表示の関数呼び出し(ユーザ定義関数)
24
-
25
- show_tables('$db_name',$db);
26
-
27
-
28
-
29
- // データベースサーバの切断
30
-
31
- mysql_close($db);
21
+ exit;
32
-
33
-
34
-
35
- // ----------------------------------------------
36
-
37
- // テーブルの一覧表示の関数の定義
38
-
39
- function show_tables($db_name,$db)
40
-
41
- {
42
-
43
- // 指定されたデータベース内のテーブルリストの取得
44
-
45
- $rs = mysql_list_tables($db_name,$db);
46
-
47
-
48
-
49
- // 結果セット内のレコード数の取得
50
-
51
- $num_rows = mysql_num_rows($rs);
52
-
53
-
54
-
55
- print "<table border=1 cellpadding=0 cellspacing=0>\n";
56
-
57
- print "<tr>\n";
58
-
59
- print "<td align=center>Tables in {$db_name}</td>\n";
60
-
61
- print "</tr>\n";
62
-
63
-
64
-
65
- // テーブルがある場合
66
-
67
- if($num_rows > 0)
68
-
69
- {
70
-
71
- // 結果セット内のレコードを順次参照
72
-
73
- for($i = 0; $i < $num_rows; $i++)
74
-
75
- {
76
-
77
- // テーブル名の取得
78
-
79
- $table_name = mysql_table_name($rs,$i);
80
-
81
-
82
-
83
- // テーブル名の表示
84
-
85
- print "<tr>\n";
86
-
87
- print "<td><a href='table.php?table=$table_name'>{$table_name}</a></td>\n";
88
-
89
- print "</tr>\n";
90
-
91
- }
92
22
 
93
23
  }
94
24
 
95
25
 
96
26
 
97
- // テーブルが無い場合
27
+ $sql = "SHOW TABLES FROM $dbname";
98
28
 
99
- else
29
+ $result = mysql_query($sql);
100
30
 
101
- {
102
31
 
103
- print "<tr>\n";
104
32
 
105
- print "<td>テーブルはありません</td>\n";
33
+ if (!$result) {
106
34
 
107
- print "</tr>\n";
35
+ echo "DB Error, could not list tables\n";
36
+
37
+ echo 'MySQL Error: ' . mysql_error();
38
+
39
+ exit;
108
40
 
109
41
  }
110
42
 
43
+
44
+
45
+ while ($row = mysql_fetch_row($result)) {
46
+
111
- print "</table>\n";
47
+ echo "Table: {$row[0]}\n";
48
+
49
+ }
112
50
 
113
51
 
114
52
 
115
- // 結果セットの解放
116
-
117
- mysql_free_result($rs);
53
+ mysql_free_result($result);
118
-
119
- }
120
54
 
121
55
  ?>
122
56
 

1

説明文の変更あり

2016/08/14 01:11

投稿

alkeran
alkeran

スコア29

test CHANGED
File without changes
test CHANGED
@@ -1,10 +1,12 @@
1
- **表題の件ですが、show table でテーブル名一覧を取得したのですが、それを <table>~</table> 様式で縦に12個ずつ並べたいのですが上手くできません。(for や while を使うのでしょうか?)
1
+ **表題の件ですが、show table でテーブル名一覧を取得したのですが、それを <table>~</table> 様式で縦に12個ずつ並べたいのですが上手くできません。(for や while を使うのでしょうか?) 結果はテーブル名が縦に表示されます。
2
2
 
3
3
  どなたか分かる方ご教授よろしくお願い致します。
4
4
 
5
- コードは以下の通りです。**
5
+ **
6
6
 
7
7
 
8
+
9
+ ```コードは以下の通りです。
8
10
 
9
11
  <?php
10
12
 
@@ -117,3 +119,5 @@
117
119
  }
118
120
 
119
121
  ?>
122
+
123
+ ```