Problem mit Mysql Datenbank in verbindung mit PHP

Übergeben kannst Du es zum Beispiel in einem Array. Z.B. für jede Zutat eine Checkbox in folgender Form:
HTML:
<input type="checkbox" name="zutatids[]" value="1">Wodka
                                                ^- Die ID der Zutat
du erhältst dann in $_POST['zutatids'] ein array.
Daraus kannst du Dir das Query zusammen bauen (ausgehend von meiner ursprünglichen Modellierung):
PHP:
$query="SELECT "."\n"
    "cocktail.id,"."\n"
    "cocktail.name,"."\n"
    "COUNT(*) AS anzahlZutaten"."\n"
    "FROM cocktail";
for ($i=0;$i<count($_POST['zutatids']);$i++) {
    $query.="\n"
        ."JOIN cocktailZutaten AS z"
        .$i." ON (cocktail.id=z".$i.".cocktailId)";
}
$query.="\n"
    ."GROUP BY c.cocktailId"."\n"
    ."WHERE";
$i=0
foreach($_POST['zutatids'] as $zID) {
    $i++;
    $query.="\n"
        ."z".$i.".zutatId=".$zID."\n"
        ."AND";
}
$query.="anzahlZutaten=".count($_POST['zutatids']);

echo $query;
$res=mysql_query($query);
Und nochmal: Es spielt keine Rolle, ob Du 0, 15 oder 100 Zutaten hast, wenn Du ein Datenbankmodell hast, welches eine m:n-Beziehung mit 3 Tabellen abbildet.
 
Zurück