以下は、データベース内のすべてのデータをテーブルに表示するための PHP コードです。
PDOを使用するのではなく、以下のコードを使用してログインしてDBを選択すると:
mysql_connect("localhost","root","12345678") or die(mysql_error());
mysql_select_db("clubresults") or die(mysql_error());
$query=mysql_query("SELECT * from events ORDER By EventID ASC") or die(mysql_error());
出力には、すべてのデータが正しくリストされたテーブルが表示されます。
ただし、PDO を使用すると、次のエラーが表示されます。
Warning: mysql_num_fields() expects parameter 1 to be resource, object given in C:\xampp\htdocs\clubresults\listevents.php on line 52
Warning: mysql_fetch_row() expects parameter 1 to be resource, object given in C:\xampp\htdocs\clubresults\listevents.php on line 58
以下は、データを取得してテーブルに配置するための完全な php コードです (動作しません) 誰でも間違いを指摘できますか? 私はそれを自分で理解できないようだから..すべての提案は本当に感謝しています! ありがとう!
$pdo = new PDO('mysql:host=localhost;dbname=clubresults', 'root', '12345678');
#Set Error Mode to ERRMODE_EXCEPTION.
$pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$query=$pdo->query('SELECT * from events ORDER By EventID ASC');
<<<<<<<<<<<<<<<<THIS BIT WORKS IF NOT USING PDO>>>>>>>>>>
$numfields = mysql_num_fields($query);
print("<table border=\"1\">\n<tr>\n");
for ($i=0; $i<$numfields; $i++) {
printf("<th>%s</th>\n", mysql_field_name($query,$i));
}
print("</tr>\n");
while ($row = mysql_fetch_row($query)) {
print("<tr>\n");
for ($i=0; $i<sizeof($row); $i++) {
printf("<td><a href=\"index.php?ID=%s\">%s</a></td>\n", $row[0],$row[$i]);
}
print("</tr>\n");
}
print("</table>\n");