我正在研究基于数据库的CMS。数据库结构如下(语言为荷兰语):
id,artikelnummer_fabrikant,breedte,diepte,hoogte,extrainfo,afmeting,kleur,merk,serie,producttype,omschrijving,prijsfinal,levertijd
使用下一段代码,我从数据库中获取所有信息并将其放入表中:
(对不起,我不使用 < 和 > 创建标签,这个文本编辑器将其视为标签而不是文本,我不知道如何使这项工作正确,欢迎任何提示!)
function get_content() {
echo "<p>";
echo "<table>";
echo "<tr>";
echo "<td> id </td>";
echo "<td> artikelnummer frabrikant </td>"
and so on
echo "</tr>";
$sql = "SELECT * FROM products";
$res = mysql_query($sql) or die (mysql_error());
if (mysql_num_rows($res) != 0) :
while ($row = mysql_fetch_assoc($res)) :
echo "<tr>";
echo "<td> . $row['id'] . </td>";
echo "<td> . $row['artikelnummer_fabrikant'] . </td>";
and so on
echo "</tr>";
endwhile;
echo "</table>";
echo "</p>";
endif;
现在我想用标签选择和选项在此构建一个过滤器,这样当我选择选项品牌(merk)'windsor'时,它将显示所有带有品牌'windsor'的产品以及所有信息,例如breedte,hoogte , diepte(宽度、高度、深度)。
我得到了一段代码,它在选项菜单中为我提供了所有品牌(merk):
function category_filter() {
echo "Merk: ";
echo "<select onchange=window.location = this.value>;";
$sql = "SELECT merk FROM products";
$res = mysql_query($sql) or die (mysql_error());
if (mysql_num_rows($res) !=0 ) :
while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) :
echo "<option> . $row['merk'] . </option>";
endwhile;
endif;
echo "</select>";
当然,我对数据库中的每个项目都有 1 个。
我接下来要做的是以某种方式组合这两个代码,当我在选项菜单品牌(merk)中选择品牌(merk)'Windsor'时,它将显示所有带有品牌'Windsor'的产品+所有该产品的其他信息。
我挣扎了一周试图让这件事发生,但我无法让它像我想要的那样发展:(。
我怎样才能使这项工作?