SQL-запрос не дал результатов - PullRequest
0 голосов
/ 29 февраля 2012

Я делаю каталог, используя 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, поэтому прошу прощения за, возможно, действительно вопиющие вопросы!

Ответы [ 3 ]

1 голос
/ 29 февраля 2012

Вы должны проверить, не выполняется ли ваш запрос, с помощью какой-либо проверки на наличие ошибок mysqli.

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

}

, если вы никогда не знаете, почему результат не отображается

1 голос
/ 29 февраля 2012

попробуйте, вы использовали ";"который не нужен и жанр это строка

 $q = "SELECT ID, Name, Genre FROM Products WHERE Genre='"
            .mysqli_real_escape_string($_SESSION['conn'],$cat_id)."'";
0 голосов
/ 29 февраля 2012

Перепишите свой цикл while с помощью этого: -

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