使用php从数据库中获取多行

时间:2018-06-19 15:24:11

标签: php mysql ajax

我正在构建一些过滤器功能,以提取满足某些条件的项目。我正在使用AJAX,还有一些基本的php,我会搜索与某个ID匹配的项目。我的问题是,一旦有具有重复ID的行,什么都不显示。我希望显示所有具有匹配ID的行。我似乎看不到这个问题的重复,但是,如果有解决的办法,我将不胜感激。我在下面介绍了我的代码:

我的filter.php:

src="http://example.com/site.js"

这是事物的正面:

<!DOCTYPE html>
<html>
<head>

</head>
<body>

<?php
include('dbconnect.php');

$q = intval($_GET['q']);

mysqli_select_db($conn,"database");
$search="SELECT * FROM table WHERE id = '".$q."'";
$result = mysqli_query($conn,$search);

echo "<table>
<tr>
<th>Merchant</th>
<th>Product</th>
</tr>";
while($row = mysqli_fetch_array($result)) {
    echo "<tr>";
    echo "<td>" . $row['merchant'] . "</td>";
    echo "<td>" . $row['product'] . "</td>";
    echo "</tr>";
}
echo "</table>";
mysqli_close($conn);
?>
</body>
</html>

以下脚本支持哪个:

    <div>
        <ul>
            <li><a href="#" class="header">Option 1</a></li>
            <li onclick="showProduct(this.value)" value="1"><a>Product1a</a></li>
            <li onclick="showProduct(this.value)" value="2"><a>Product 2a</a></li>
            <li><a href="#" class="header">Option 2</a></li>
            <li onclick="showProduct(this.value)" value="1"><a>Product 1b</a></li>
            <li onclick="showProduct(this.value)" value="2"><a>Product 2b</a></li>

        </ul>
    </div>

    <!--SEARCH OUTPUT-->
    <div id="products">></div>

2 个答案:

答案 0 :(得分:0)

如果您在数据库中的id字段是一个整数字段,那么您的查询应该是

$search="SELECT * FROM table WHERE id = ".$q." ";

我删除了id变量周围的单引号。

尝试在phpmyadmin或控制台中运行查询,然后查看返回的结果。

答案 1 :(得分:0)

尝试:

1)显示错误:

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

来自: How do I get PHP errors to display?

2)回显查询,然后直接在phpmyadmin中尝试一下,看看是否出现错误。

echo $search;