使用href为$ _GET []传递值不起作用

时间:2016-09-13 04:35:13

标签: php html mysql

我在网页上使用GET来处理将过滤器应用到显示数据库中的项目的MYSQL查询,然后信息显示在div中,而div的底部则显示了这个信息。

<a href="tyreDetails.php?id=<?php echo $product["recid"]; ?>">
    <button class="btn btn-default btn-sm btn-primary">Details</button>
</a>

然后在另一页上使用它。使用项目的ID再次显示信息。

if (isset($_GET['id'])) {

    $id = mysqli_escape_string($db, $_GET['id']);

    $featuredSql = "SELECT t.*, s.quantity, s.rrp AS nRetailPrice, r.city AS city_name, ts.thumbnail as tread_thumbnail, ts.bigpic as tread_bigpic, t.rating FROM tyres t INNER JOIN stocklevels s 

ON t.stockcode=s.stockcode LEFT JOIN tyre_treads ts ON t.treadid=ts.recid LEFT JOIN reseller r ON s.city=r.recid WHERE s.quantity>0 AND s.rrp>0 ";

    // $featuredResult = mysqli_query($db, $featuredSql);

    if ($id != 'Any' && $id != null) $featuredSql .= " AND t.recid='$id' LIMIT 1";

    if (!$featured = mysqli_query($db, $featuredSql)) die(mysqli_error());
    var_dump($featured);
    if (!$tyre1 = mysqli_fetch_object($featured)) echo "<br />No tyres match those parameters. Please try again.";

    $row = mysqli_fetch_array($featured, MYSQLI_NUM);

    $read = $row[1];
}

我将第一页上的表单从使用GET更改为使用POST,现在我从服务器收到500错误。网址看起来像website.com/tyreDetails.php?id=4243,因此值正在传递。

我不确定为什么这不再适用?它工作正常,直到我将原始搜索区域更改为发布,但这是分开的,并且根本没有附加到表单。

编辑** 我只是将其他表单的所有更改恢复为发布,但它仍然不再有效。我现在假设这不是问题。

1 个答案:

答案 0 :(得分:1)

SQLite

是一个超链接,所以它不会是“POST”类型。