Mit der ID der Kategorie wirst ein bisschen Pech haben mit den Groups!
Bei den Kategorien selbst kannst ?cat=$id machen aber bei den Groups und deinem beispiel würde ich glatt den Parameter ?group=$group verwenden!!
Bsp.:
statt
HTML-Code:
<a href='/browse.php?cat=104'>Sonstige</a></td>
das
HTML-Code:
<a href='/browse.php?group=Sonstige'>Sonstige</a></td>
oder
HTML-Code:
<a href='/browse.php?group=Serien,Filme'>Serien und Filme</a></td>
und die abfrage wäre das einfach
PHP-Code:
$group = htmlspecialchars($_GET['group']);
if(trim($group) != "") {
$exp_group = explode(",", $group);
$first = false;
foreach($exp_group as $groups_value) {
if($first) $groups_select .= " AND ";
$groups_select .= "group='".$groups_value."'";
$first = true;
}
$query_groups = mysql_query("SELECT id FROM categories WHERE $groups_select");
$row_groups = mysql_num_rows($query_groups);
if($row_groups > 0) {
while($result_groups = mysql_fetch_array($query_groups)) {
$groups[] = $result_groups['id'];
}
}
$first = false;
foreach($groups as $group_value) {
if($first) $group_select .= " AND ";
$group_select .= "id='".$group_value."'";
$first = true;
}
$query = mysql_query("SELECT * FROM torrents WHERE $group_select");
//ect.
}
Das bedeutet:
Er holt sich alle angegeben Gruppen von ?group= (können mehrere sein die durch "," getrennt werden) und holt sich daraus alle dazu gehörende Kategorie IDs!