MySQLデータがテーブルに表示されないのはなぜですか?私のデータ(鳥の名前などのリスト)が表示されないことを除いて、すべてが正常に機能しているようです。私の間違いがどこにあるかを知ることができる新鮮な目が必要です。確かに、これを行うにはおそらくもっと簡単な方法があることを知っていますが、これは私の割り当てに必要なことなので、他の方法を提供しないでください。必要なのは、データをHTMLテーブルに入力するための支援だけです。私のPHPコードは以下のとおりです。
PHPコード
<?php
$pageTitle = 'Mod06 Pagination| Jason McCoy ';
include('includes/header.inc.php');
include ('includes/db_connect.inc.php');
$display = 8;
// Determine how many pages there are...
if (isset($_GET['p']) && is_numeric($_GET['p'])) { // Already been determined.
$pages = $_GET['pages'];
} else {
$query = "SELECT COUNT(birdID) FROM birds";
$result = @mysqli_query($dbc, $query);
$row = @mysqli_fetch_array($result, MYSQLI_NUM);
$records = $row[0];
}
// Calculate the number of pages...
if ($records > $display) {
$pages = ceil($records/$display);
} else {
$pages = 1;
}
// Determine where in the database to start returning results...
if (isset($_GET['s']) && is_numeric($_GET['s'])) {
$start = $_GET['s'];
} else {
$start = 0;
}
// Sort the columns
// Default is birdID
$sortDefault = 'birdID';
// Create an array for the columns
$sortColumns = array('birdID', 'nameGeneral', 'nameSpecific', 'populationTrend');
// Define sortable query ASC DESC
$sort = (isset($_GET['sort'])) && in_array($_GET['sort'], $sortColumns) ? $_GET['sort']: $sortDefault;
$order = (isset($_GET['order']) && strcasecmp($_GET['order'], 'DESC') == 0) ? 'DESC' : 'ASC';
// Run the query
$query = "SELECT birdID, nameGeneral, nameSpecific, populationTrend FROM birds ORDER BY $order LIMIT $start, $display";
$result = @mysqli_query($dbc, $query);
?>
<!-- Table header: -->
<table align="center" cellspacing="0" cellpadding="5" width="80%">
<tr>
<th><a href='index.php?sort=birdID&order=<?php echo $order == 'DESC' ? 'ASC' : 'DESC' ?>'>Bird<?
if($_GET["order"]=="ASC" && $_GET["sort"]=="birdID"){
echo '<img src="images/downArrow.jpg" id="birdASC" name="birdASC" style="margin:-15px 0 0 13px;" width="18px" height="18px">';
} else {
echo '<img src="images/upArrow.jpg" id="birdDESC" name="birdDESC" style="margin:-15px 0 0 13px;" width="18px" height="18px">';
}?></a></th>
<th><a href='index.php?sort=nameGeneral&order=<?php echo $order == 'DESC' ? 'ASC' : 'DESC' ?>'>General Name<?
if($_GET["order"]=="ASC" && $_GET["sort"]=="nameGeneral"){
echo '<img src="images/downArrow.jpg" id="nameGeneralASC" name="nameGeneralASC" style="margin:-15px 0 0 13px;" width="18px" height="18px">';
} else {
echo '<img src="images/upArrow.jpg" id="nameGeneralDESC" name="birdDESC" style="margin:-15px 0 0 13px;" width="18px" height="18px">';
}?></a></th>
<th><a href='index.php?sort=nameSpecific&order=<?php echo $order == 'DESC' ? 'ASC' : 'DESC' ?>'>Name Specific<?
if($_GET["order"]=="ASC" && $_GET["sort"]=="nameSpecific"){
echo '<img src="images/downArrow.jpg" id="nameSpecificASC" name="nameSpecificASC" style="margin:-15px 0 0 13px;" width="18px" height="18px">';
} else {
echo '<img src="images/upArrow.jpg" id="nameSpecificDESC" name="birdDESC" style="margin:-15px 0 0 13px;" width="18px" height="18px">';
}?></a></th>
<th><a href='index.php?sort=populationTrend&order=<?php echo $order == 'DESC' ? 'ASC' : 'DESC' ?>'>Population Trend<?
if($_GET["order"]=="ASC" && $_GET["sort"]=="populationTrend"){
echo '<img src="images/downArrow.jpg" id="populationTrendASC" name="populationTrendASC" style="margin:-15px 0 0 13px;" width="18px" height="18px">';
} else {
echo '<img src="images/upArrow.jpg" id="populationTrendDESC" name="birdDESC" style="margin:-15px 0 0 13px;" width="18px" height="18px">';
}?></a></th>
</tr>
<?php
// Display the database results in the table...
while ($row = @mysqli_fetch_array($result, MYSQL_ASSOC)) {
echo '<tr>
<td align="left">$row[birdID]</td>
<td align="left">$row[nameGeneral]</td>
<td align="left">$row[nameSpecific]</td>
<td align="left">$row[populationTrend]</td>
<tr>';
}
echo '</table>';
mysqli_close($dbc);
// Make the links to other pages, if necessary.
if ($pages > 1) {
echo '<br /><p>';
$currentPage = ($start/$display) + 1;
// If it's not the first page, make a Previous button:
if ($currentPage != 1) {
echo '<a href="index.php?s=' . ($start - $display) . '&pages=' . $pages . '&sort=' . $sort . '">Previous</a> ';
}
// Make all the numbered pages:
for ($i = 1; $i <= $pages; $i++) {
if ($i != $currentPage) {
echo '<a href="index.php?s=' . (($display * ($i - 1))) . '&pages=' . $pages . '&sort=' . $sort . '">' . $i . '</a> ';
} else {
echo $i . ' ';
}
} // End of FOR loop.
// If it's not the last page, make a Next button:
if ($currentPage != $pages) {
echo '<a href="index.php?s=' . ($start + $display) . '&pages=' . $pages . '&sort=' . $sort . '">Next</a>';
}
echo '</p>';
}
include('includes/footer.inc.php');
?>
</div>
</body>
</html>