<?php
include 'db.php';
$subassetcategory = $_GET["subassetcategory"];
if ($subassetcategory == "all") {
$sql = "SELECT * FROM asset_subasset";
}
else {
$sql = "SELECT * FROM asset_subasset WHERE subassetcategory = '" . $subassetcategory . "'";
}
$result = mysql_query($sql) or die(mysql_error());
if ($row = mysql_fetch_array($result)) {
echo "<table border='1'>
<tr>
<th>Asset ID</th>
<th>Subasset Category</th>
<th>Subasset Name</th>
</tr>";
while ($row = mysql_fetch_array($result)) {
$subassetid = $row['subassetid'];
$assetid = $row['assetid'];
$subassetname = $row['subassetname'];
$subassetcategory = $row['subassetcategory'];
echo "<tr>";
echo "<td>" . $assetid . "</td>";
echo "<td>" . $subassetcategory . "</td>";
echo "<td>" . $subassetname . "</td>";
echo "<td>" . "<a href='viewassetdetail.php?subassetid=$subassetid&assetid=$assetid'>View<a/>" . "</td>";
echo "</tr>";
}
echo "</table>";
}
else {
echo "<br> No data found </br>";
}
mysql_close($connect);
?>
Пожалуйста, помогите мне, я не мог понять, почему этот код не может вернуть результат должным образом. Он вернул меньше 1 строки (если результат предполагает, что у него 2 строки, он вернет только 1) из точных строк, доступных в базе данных.
if ($row = mysql_fetch_array($result)) {
echo "<table border='1'>
<tr>
<th>Asset ID</th>
<th>Subasset Category</th>
<th>Subasset Name</th>
</tr>";
while ($row = mysql_fetch_array($result)) {
$subassetid = $row['subassetid'];
$assetid = $row['assetid'];
$subassetname = $row['subassetname'];
$subassetcategory = $row['subassetcategory'];
echo "<tr>";
echo "<td>" . $assetid . "</td>";
echo "<td>" . $subassetcategory . "</td>";
echo "<td>" . $subassetname . "</td>";
echo "<td>" . "<a href='viewassetdetail.php?subassetid=$subassetid&assetid=$assetid'>View<a/>" . "</td>";
echo "</tr>";
}
echo "</table>";
}
else {
echo "<br> No data found </br>";
}
mysql_close($connect);
?>
если я только что написал этот код, он отлично работает.
$result = mysql_query($sql) or die(mysql_error());
echo "<table border='1'>
<tr>
<th>Asset ID</th>
<th>Subasset Category</th>
<th>Subasset Name</th>
</tr>";
while ($row = mysql_fetch_array($result)) {
$subassetid = $row['subassetid'];
$assetid = $row['assetid'];
$subassetname = $row['subassetname'];
$subassetcategory = $row['subassetcategory'];
echo "<tr>";
echo "<td>" . $assetid . "</td>";
echo "<td>" . $subassetcategory . "</td>";
echo "<td>" . $subassetname . "</td>";
echo "<td>" . "<a href='viewassetdetail.php?subassetid=$subassetid&assetid=$assetid'>View<a/>" . "</td>";
echo "</tr>";
}
echo "</table>";
mysql_close($connect);
?>
Но я хочу, чтобы он показывал «Данные не найдены», если результат был пустым. Итак, любая помощь? Я знаю, что это очень просто, но я не мог найти ответ уже несколько дней. Заранее спасибо!