0

我正在使用 php 制作目录,目前所有类型都出现在页面顶部,但是当我单击它们时,它们不会返回任何结果,我不知道为什么。

这是我目前的代码:

<?php
session_start();
include "connect.php";
include "header.php";

if (isset($_GET['ID'])) {
    $cat_id = $_GET['Genre'];
    $q = "SELECT ID, Name, Genre FROM Products WHERE Genre="
            .mysqli_real_escape_string($_SESSION['conn'],$cat_id).";";

    $result = mysqli_query($_SESSION['conn'],$q);


    echo "<div>";
    while ($row = mysqli_fetch_row($result)){
        echo "<p><a href='product.php?id=$row[ID]'>$row[Name]</a></p>";
    }
    echo "</div>";
    mysqli_free_result($result);
}

include "footer.php";
?>

这是我第一次使用 php,所以对于可能非常明显的问题,我很抱歉!

4

3 回答 3

1

试试这个,你用过“;” 这不是必需的,流派是字符串

 $q = "SELECT ID, Name, Genre FROM Products WHERE Genre='"
            .mysqli_real_escape_string($_SESSION['conn'],$cat_id)."'";
于 2012-02-29T11:45:14.957 回答
1

您应该通过某种 mysqli 错误检查来检查您的查询是否失败。

if (! $result = mysqli_query($_SESSION['conn'],$q))
{
   printf("Error: %s\n", $mysqli->error);

}

除非你永远不知道为什么结果没有显示

于 2012-02-29T11:47:07.133 回答
0

用这个重写你的while循环:-

while ($row = mysqli_fetch_row($result)){
    echo "<p><a href='product.php?id=".$row['ID']."'>".$row['Name']."</a></p>";
于 2012-02-29T11:48:06.227 回答