私はphpにかなり慣れておらず、検索バーを備えたWebサイトを開発しています。
データベースから製品を検索するための検索クエリを実装するために、いくつかのコードを使用しました。検索クエリは正常に機能し、表示する必要のあるすべての必要な製品を表示します。
ただし、その特定の商品に関する詳細情報を表示する商品の詳細ページへのリンクをアイテムに含める必要があります。ただし、これをhtmlを使用したリンクとしてどのように表現するかはわかりません。
私の検索コードは次のとおりです。
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
$search_output = "";
if(isset($_POST['searchquery']) && $_POST['searchquery'] != ""){
$searchquery = preg_replace('#[^a-z 0-9?]#i', '', $_POST['searchquery']);
if($_POST['filter1'] == "Food"){
$sqlCommand = "SELECT * FROM tbl_product WHERE pd_name LIKE '%$searchquery%'";
}
include_once("config.php");
//Database connections below
mysql_connect($dbHost, $dbUser, $dbPass) or die(mysql_error());
mysql_select_db($dbName) or die(mysql_error());
$query = mysql_query($sqlCommand) or die(mysql_error());
$count = mysql_num_rows($query);
if($count >= 1){
$search_output .= "<hr />$count results for <strong>$searchquery</strong><hr />";
while($row = mysql_fetch_array($query))
{
$pd_name = $row["pd_name"];
$search_output .= "$pd_name<br />";
} // close while
} else {
$search_output = "<hr />0 results for <strong>$searchquery</strong><hr />";
}
}
?>
<html>
<head>
</head>
<body>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
Search for dishes :
<input name="searchquery" type="text" size="30" maxlength="100">
In:
<select name="filter1">
<option value="Food">Food</option>
</select>
<input name="myBtn" type="submit" value="Search">
<br />
</form>
<div>
<?php echo $search_output; ?>
</div>
</body>
</html>
参照したいリンクは次のとおりです。
<a href="" . $_SERVER['PHP_SELF'] . "?c=$catId&p=$pd_id" . "">$pd_name</a>
ただし、この参照を追加すると、機能しないようです。どんな助けでもいただければ幸いです。前もって感謝します。