我从这个网站上的一个类似问题中得到了答案:
并根据我的需要对其进行了调整,但一直坚持创建一个下拉菜单来对产品进行排序。
我的表单代码是:
<form name="myform">
<select name="order_by" onchange="if(this.value != '') document.location = '/equipment.php?cat=<?= $prodCategory;?>&subCat=<?=$subCategory;?>&order_by=' + this.value">
<option<?php if(isset($_GET['order_by']) && $_GET['order_by'] == 'choose') echo ' selected="selected"'; ?> value="choose">Sort By</option>
<option<?php if(isset($_GET['order_by']) && $_GET['order_by'] == 'name') echo ' selected="selected"'; ?> value="name">Name</option>
<option<?php if(isset($_GET['order_by']) && $_GET['order_by'] == 'price') echo ' selected="selected"'; ?> value="price">Price</option>
</select>
</form>
我的 switch 语句和查询如下所示:
switch($_GET['order_by']) {
case 'name':
$order_by = " ORDER BY shortDescription ASC";
break;
case 'price':
$order_by = " ORDER BY rrp ASC";
break;
}
$productQuery = 'SELECT * FROM ********* WHERE subCategory = "' . $subCat[0]['categoryID'] . $order_by . '"';
但是由于某种原因,如果我选择它们,它不会按任何一个选择对它们进行排序。
有人可以看到我的代码有任何问题吗?