我有一个名为Company
的表。它有五列(Company_ID
, Company_Name
, Product_Type
, City
和State
)。使用我为这个任务重新设计的脚本,我可以显示City
和State
,但不能显示Company_Name
或Product_Type
。我无法判断它们是否不可见,因为我仍然可以根据这两个缺失的列进行排序。
完整的脚本:
<?php # Script 10.5 - #5
//....
// Define the query:
$q = "SELECT Company_Name AS 'Company Name', Product_Type AS 'Product Type', City, State FROM Company ORDER BY $order_by LIMIT $start, $display";
$r = @mysqli_query ($dbc, $q); // Run the query.
// Table header
//....
// Fetch and print all the records....
$bg = '#eeeeee';
while ($row = mysqli_fetch_array($r, MYSQLI_ASSOC)) {
$bg = ($bg=='#eeeeee' ? '#ffffff' : '#eeeeee');
echo '<tr bgcolor="' . $bg . '">
<td align="left"><a href="edit_user.php?id=' . $row['Company_Name'] . '">Edit</a></td>
<td align="left"><a href="delete_user.php?id=' . $row['Company_Name'] . '">Delete</a></td>
<td align="left">' . $row['Company_Name'] . '</td>
<td align="left">' . $row['Product_Type'] . '</td>
<td align="left">' . $row['City'] . '</td>
<td align="left">' . $row['State'] . '</td>
</tr>
';
} // End of WHILE loop.
echo '</table>';
mysqli_free_result ($r);
mysqli_close($dbc);
// ....
?>
我从PHPMyAdmin运行相同的查询,它是成功的,因为它显示了所有7条记录。显示结果似乎是问题所在。
您可以这样选择行:
$q = "SELECT Company_Name AS 'Company Name', Product_Type AS 'Product Type', [...] "
然后你试着用这个来访问它们:
<td align="left">' . $row['Company_Name'] . '</td>
<td align="left">' . $row['Product_Type'] . '</td>
但是您使用的名称(Company_Name
和Product_Type
)不存在,因为您在as
语句中指定了不同的名称,请尝试:
$q = "SELECT Company_Name, Product_Type, [...] "
应该能行