我正在尝试用 PHP 单独打印 SQL 数据库中的每一行。我正在尝试执行此操作,以便检索到的每一行都可以充当链接,将用户引导到另一个页面。例如,当前的 SQL 查询将从数据库类别中输出类别名称,我希望它输出该表中的所有值,但拥有它,以便每个值都有一个不同的重定向链接到单击的另一个页面。
$query = "SELECT CATEGORY_NAME
FROM CATEGORIES ORDER BY CATEGORY_ID ASC";
$results = @mysqli_query ($conn, $query);
$numrows = mysqli_num_rows($results);
if ($results) {
if ($numrows >0) {
echo '
<table>
<tr>
<td><strong>Categories</stong></td>
</tr>';
while ($row = mysqli_fetch_array($results, MYSQLI_ASSOC)) {
echo '<tr>
<td>' . $row['CATEGORY_NAME'] . '</td>
</tr>
';
}
mysqli_free_result ($results);
比如,
Category
__________
PS4
XBOX
我可以单击 PS4,它会将我带到另一个页面,我知道如何使用 href 执行此操作,然后打印出 sql 中的行,但是,我不确定如何单独打印每一行而不打印使用 $row['CATEGORY_NAME'] 将它们排除。
感谢您的帮助
最佳答案
您可以将需要重定向到的链接与 CATEGORY_NAME
一起存储在新列 CATEGORY_URL
中,然后将其打印出来,如下所示:
$query = "SELECT CATEGORY_NAME, CATEGORY_URL FROM CATEGORIES ORDER BY CATEGORY_ID ASC";
$results = mysqli_query($conn, $query);
$numrows = mysqli_num_rows($results);
if ($numrows > 0) {
echo '
<table>
<tr>
<td><strong>Categories</stong></td>
</tr>';
while ($row = mysqli_fetch_array($results, MYSQLI_ASSOC)) {
echo '
<tr>
<td>
<a href="'.$row['CATEGORY_URL'].'">'.$row['CATEGORY_NAME'].'</a>
</td>
</tr>';
}
mysqli_free_result ($results);
} else {
// no results found
}
或者,如果您只想将其作为 url 参数传递,则只需修改 if 像这样:
<a href="https://www.google.com/#q='.$row['CATEGORY_NAME'].'">'.$row['CATEGORY_NAME'].'</a>
或者
<a href="https://www.yoursite.com/'.$row['CATEGORY_NAME'].'.php">'.$row['CATEGORY_NAME'].'</a>
关于php - 在 PHP 中单独打印 MYSQL 表中的每一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43547963/