質問編集履歴
1
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -164,4 +164,114 @@
|
|
164
164
|
```
|
165
165
|
|
166
166
|
なるべくsqlClassで管理するようにしたいとおもっています。
|
167
|
-
結論として何もできていないので進捗はよくないです。
|
167
|
+
結論として何もできていないので進捗はよくないです。
|
168
|
+
|
169
|
+
|
170
|
+
---
|
171
|
+
08-17追記
|
172
|
+
最初から複数ファイルを用意しようとすると、余計にわからなくなると思い
|
173
|
+
1つのファイルでタイトル一覧を表示するように編集しましたが
|
174
|
+
エラーが出ます。
|
175
|
+
何が原因か教えていただけませんか?
|
176
|
+
```php
|
177
|
+
<?php
|
178
|
+
ini_set( 'display_errors', 1 );
|
179
|
+
|
180
|
+
class tesCls {
|
181
|
+
|
182
|
+
// PDO生成
|
183
|
+
function dbconnect(){
|
184
|
+
try {
|
185
|
+
$db = "mysql";
|
186
|
+
$host = "localhost";
|
187
|
+
$dbname = "bb_db";
|
188
|
+
$user = "bb_user";
|
189
|
+
$pass = "bbpass";
|
190
|
+
$charset = "";
|
191
|
+
$dbh = new PDO($db.':host='.$host.';dbname='.$dbname.','.$user.','.$pass);
|
192
|
+
echo "接続ok";
|
193
|
+
} catch (Exception $e) {
|
194
|
+
}
|
195
|
+
}
|
196
|
+
|
197
|
+
// タイトル一覧用SQL
|
198
|
+
function selTitleList(){
|
199
|
+
try {
|
200
|
+
$this->dbconnect();
|
201
|
+
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
202
|
+
$sql = "SELECT titleList.idTitle, titleList.title, COUNT(thread.idName) AS cntRes FROM titleList, thread WHERE titleList.idTitle = thread.idTitle group by titleList.idTitle";
|
203
|
+
|
204
|
+
$stmt = $dbh->prepare($sql);
|
205
|
+
$stmt->execute();
|
206
|
+
$data = array();
|
207
|
+
$count = $stmt->rowCount();
|
208
|
+
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
|
209
|
+
$data[] = $row;
|
210
|
+
}
|
211
|
+
var_dump($count);
|
212
|
+
var_dump($data);
|
213
|
+
} catch (Exception $e) {
|
214
|
+
}
|
215
|
+
}
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
// トリップ作成
|
220
|
+
function trip(){
|
221
|
+
$tripkey = '#istrip'; //パスワードとする文字列(# 付き)
|
222
|
+
$tripkey = substr($tripkey, 1);
|
223
|
+
|
224
|
+
$salt = substr($tripkey . 'H.', 1, 2);
|
225
|
+
$salt = preg_replace('/[^.-z]/', '.', $salt);
|
226
|
+
$salt = strtr($salt, ':;<=>?@[\]^_`', 'ABCDEFGabcdef');
|
227
|
+
|
228
|
+
$trip = crypt($tripkey, $salt);
|
229
|
+
$trip = substr($trip, -10);
|
230
|
+
$trip = '◆' . $trip;
|
231
|
+
|
232
|
+
echo $trip;
|
233
|
+
}
|
234
|
+
|
235
|
+
/*
|
236
|
+
int idTitle //
|
237
|
+
String title
|
238
|
+
//int cntArticle //++
|
239
|
+
|
240
|
+
int idTitle //
|
241
|
+
String article
|
242
|
+
int idName
|
243
|
+
String name
|
244
|
+
String trip
|
245
|
+
Date date
|
246
|
+
String password
|
247
|
+
String email
|
248
|
+
|
249
|
+
%Y/%m/%e %k:%i:%s%f
|
250
|
+
*/
|
251
|
+
}
|
252
|
+
|
253
|
+
$test = new tesCls();
|
254
|
+
|
255
|
+
$test->selTitleList();
|
256
|
+
echo "<table>".\n."
|
257
|
+
<tr>
|
258
|
+
<th>id</th>
|
259
|
+
<th>title</th>
|
260
|
+
<th>cnt</th>
|
261
|
+
</tr>";
|
262
|
+
foreach ($data as $row) {
|
263
|
+
echo "<tr>";
|
264
|
+
echo "<td>".$row['idTitle']."</td>";
|
265
|
+
echo "<td>".$row['title']."</td>";
|
266
|
+
echo "<td>".$row['cntRes']."</td>";
|
267
|
+
echo "<tr>";
|
268
|
+
}
|
269
|
+
echo "</table";
|
270
|
+
?>
|
271
|
+
```
|
272
|
+
```err
|
273
|
+
|
274
|
+
Notice: Undefined variable: dbh in /Applications/MAMP/htdocs/bb/local-bb/test.php on line 25
|
275
|
+
|
276
|
+
Fatal error: Uncaught Error: Call to a member function setAttribute() on null in /Applications/MAMP/htdocs/bb/local-bb/test.php:25 Stack trace: #0 /Applications/MAMP/htdocs/bb/local-bb/test.php(79): tesCls->selTitleList() #1 {main} thrown in /Applications/MAMP/htdocs/bb/local-bb/test.php on line 25
|
277
|
+
```
|