我想创建一个产品列表,并通过在菜单上选择不同的过滤器选项对其进行排序,例如:http://www.newegg.com/Store/SubCategory.aspx?SubCategory=124&IsSingle=1&Category=24&name=Network-Storage-NAS
使用php和javascript编程这有多难?
答案 0 :(得分:1)
讨论如何设计这样的系统可能有点复杂,但这可以通过PHP和MySQL中的ORDER BY
轻松完成:
$order = $_GET['order'];
if ($order)
{
switch ($order)
{
case 'p':
$order = 'price';
break;
case 'n':
$order = 'name';
break;
case 'r':
$order = 'rating';
break;
default:
$order = 'price';
break;
}
}
$Sql = "SELECT product_name, price, rating FROM products ORDER BY $order ASC";
// do your SQL stuff here
在HTML和Javascript上,您可以执行以下操作:
<select name="filter" onchange="window.location.href='filter.php?order='+this.value">
<option value="p">Price</option>
<option value="n">Name</option>
<option value="r">Rating</option>
</select>
只是一个想法,但这可以改进到更好的方法。
答案 1 :(得分:0)
如果您在新蛋和大多数其他网站上讨论排序功能,那么如果您了解SQL和PHP就很容易了。产品数据存储在数据库中,并在更改排序菜单时进行表单提交或ajax调用。该值通常也存储在会话中,以便在客户通过结果页面时在后续页面上使用。排序顺序用于在SQL查询中设置ORDER BY子句,以从数据库中检索数据。这就是你完成这一切所需的一切。