对于一个学校项目,我必须使用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";
}
答案 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";
}
}