将数据库中的搜索结果链接到另一个页面

时间:2019-04-04 19:31:49

标签: php html hyperlink

对于一个学校项目,我必须使用PHP制作一个网上商店,并使用数据库来搜索您的产品,我具有显示结果的代码,但是,当您单击其中一个时,我想建立一个链接。搜索结果,则转到该产品的页面。

我尝试过在线查找,但似乎找不到任何地方,这就是为什么我发布此问题。

$sql = "SELECT ProductID, ProductTags, ProductName FROM producttabel";
$result = $mysqli->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    echo '<div class="allepccskop">';
    echo "Onze producten: " . "<br>";
    echo '</div>';

while($row = $result->fetch_assoc()) {
    echo '<div class="allepccs">';
    echo $row["ProductName"]. "<br>";
    echo '</div>';
    }
} else {
    echo "0 results";
}

1 个答案:

答案 0 :(得分:0)

  

当您单击其中一个搜索结果时,我想链接到该产品的页面。

要链接到产品页面,您需要使用html a tag,只需将其包裹在您的产品名称周围即可,如下所示:

echo '<a href="index.php?id=' . $row["ProductID"] . '">' . $row["ProductName"]. "</a><br>"; 

href属性包含您的php文件名(例如index.php)和一个GET参数id,用于将产品ID发送到php页面。

完整示例:

假设您要扩展代码以在提供产品ID(ProductID)或其他所有产品时显示单个产品。

这是一个简单的示例,您可以扩展代码,请查看注释:

<?php

// take id from the request, otherwise set default to null
$productId = isset($_GET['id']) ? intval($_GET['id']) : null;

// when we have an id in the url, then we display a product page
if (!is_null($productId)) {

    $sql = 'SELECT ProductID, ProductTags, ProductName FROM producttabel WHERE ProductID = ' . $productId;
    $result = $mysqli->query($sql);

    if ($result && $result->num_rows == 1) {
        $row = $result->fetch_assoc();
        $result->free(); // free result set

        // output data of each row
        echo '<div class="allepccskop">';
        echo "Product page: #" . $productId . "<br>";
        echo '</div>';

        echo '<div class="allepccs">';
        echo $row["ProductName"]. "<br>";
        echo '</div>';

    } else {
        echo "Product not found";
    }

// otherwise we show All products page
} else {

    // your code

    $sql = 'SELECT ProductID, ProductTags, ProductName FROM producttabel';
    $result = $mysqli->query($sql);

    if ($result && $result->num_rows > 0) {
        // output data of each row
        echo '<div class="allepccskop">';
        echo "Onze producten: " . "<br>";
        echo '</div>';

        while ($row = $result->fetch_assoc()) {
            echo '<div class="allepccs">';
            echo '<a href="index.php?id=' . $row["ProductID"] . '">' . $row["ProductName"]. "</a><br>"; 
            echo '</div>';
        }
        $result->free(); // free result set
    } else {
        echo "0 results";
    }

}