我很抱歉壞頭銜,但我不知道更好的選擇。PHP從類型和名稱搜索
當前我正在創建搜索引擎以獲取產品詳細信息。我有2種搜索類型,第一種是使用產品類型進行搜索,另一種是使用產品名稱。
下面是搜索代碼:
<?php
$search_exploded = explode (" ", $search);
$x = "";
$construct = "";
foreach ($search_exploded as $search_each) {
$x++;
if ($x==1)
$construct .="product_type LIKE '%$search_each%'";
else
$construct .="AND product_type LIKE '%$search_each%'";
}
?>
,這是數據獲取的代碼。
$results = $mysqli->query("SELECT * FROM produk2 WHERE $construct");
if ($results) {
//fetch results set as object and output HTML
while ($obj = $results->fetch_object()) {
echo '<div class="product">';
echo '<form method="post" action="cart_update.php">';
echo '<div class="product-thumb"><img src="images/'.$obj- >product_img_name.'"></div>';
echo '<div class="product-content"><h3>'.$obj->product_name.'</h3>';
echo '<div class="product-desc">'.$obj->product_desc.'</div>';
echo '<div class="product-info">';
echo 'Price '.$currency.$obj->price.' | ';
echo 'Qty <input type="text" name="product_qty" value="1" size="3" />';
echo '<button class="add_to_cart">Add To Cart</button>';
echo '</div></div>';
echo '<input type="hidden" name="product_code" value="'.$obj->product_code.'" />';
echo '<input type="hidden" name="type" value="add" />';
echo '<input type="hidden" name="return_url" value="'.$current_url.'" />';
echo '</form>';
echo '</div>';
}
如何從product_type
數據搜索改爲product_name
,反之亦然,根據什麼我是從用戶輸入的故事嗎?
因爲我英語不好,我無法更好地解釋它。
您的結構'連接缺少空間的一件事。你應該得到語法錯誤,但你可能沒有檢查它們。例如'。=「AND'應該讀作''=」AND' –
在頭部的頂部,我使用$ search = $ _GET ['search_value'];從另一個頁面獲取數據。 –
fred,對於product_type,構造工作得很好,但我不知道如何在產品類型和名稱之間進行更改 –