Hallo,
sehr wahrscheinlich handelt es sich bei mir nur um einen dummen Anfängerfehler, aber ich komme einfach nicht weiter. Ich habe zwei Dropdown Menüs (siehe Anhang). Nun möchte ich gerne, dass bei einer bestimmten Auswahl Bilder aus meiner Datenbank ausgelesen und angezeigt werden.
Wählt man also: Farbe blau und Art alle, dann sollen alle Arten in der Farbe blau ausgelesen und angezeigt werden. Bei Farbe alle und Art Golf soll der Golf in allen möglichen Farben ausgelesen und angezeigt werden. Der letzte Schritt wäre dann Farbe blau und Art Golf... Es soll dann der Golf in Farbe blau ausgelesen und angezeigt werden.
Und so bin ich vorgegangen:
Die Funktion dazu sieht so aus:
Doch irgendwie will das ganze nicht so funktionieren wie es soll. Was mache ich falsch?
http://www.neocolours.de/beispiel.gif
sehr wahrscheinlich handelt es sich bei mir nur um einen dummen Anfängerfehler, aber ich komme einfach nicht weiter. Ich habe zwei Dropdown Menüs (siehe Anhang). Nun möchte ich gerne, dass bei einer bestimmten Auswahl Bilder aus meiner Datenbank ausgelesen und angezeigt werden.
Wählt man also: Farbe blau und Art alle, dann sollen alle Arten in der Farbe blau ausgelesen und angezeigt werden. Bei Farbe alle und Art Golf soll der Golf in allen möglichen Farben ausgelesen und angezeigt werden. Der letzte Schritt wäre dann Farbe blau und Art Golf... Es soll dann der Golf in Farbe blau ausgelesen und angezeigt werden.
Und so bin ich vorgegangen:
PHP:
if($art == "" && $colour == "") {
$results = mysql_query("SELECT art, colour, url, UNIX_TIMESTAMP(dateonserver) AS dateonserver FROM testdb ORDER BY art");
$i=0;
while($showall = mysql_fetch_array($results))
{
$i++;
images($showall['art'], $deutsch[$showall['colour']], $showall['colour'], $showall['url']);
if ($i % 5 == 0) {echo '</tr><tr>';}
}
}
else if($art == "") {
$results = mysql_query("SELECT art, colour, url, UNIX_TIMESTAMP(dateonserver) AS dateonserver, art FROM testdb WHERE colour = '".$colour."' ORDER BY art");
$i=0;
while($showart = mysql_fetch_array($results))
{
$i++;
images($showart['art'], $deutsch[$showart['colour']], $showart['colour'], $showart['url']);
if ($i % 5 == 0) {echo '</tr><tr>';}
}
}
else if($colour == "") {
$results = mysql_query("SELECT art, colour, url, UNIX_TIMESTAMP(dateonserver) AS dateonserver, colour FROM testdb WHERE art = '".$art."' ORDER BY colour");
$i=0;
while($showcolour = mysql_fetch_array($results))
{
$i++;
images($showcolour['art'], $deutsch[$showcolour['colour']], $showcolour['colour'], $showcolour['url']);
if ($i % 5 == 0) {echo '</tr><tr>';}
}
}
else {
$results = mysql_query("SELECT art, colour, url, UNIX_TIMESTAMP(dateonserver) AS dateonserver, colour FROM testdb WHERE art = '".$art."' AND colour = '".$colour."'");
if(mysql_num_rows($results) == 0)
{
echo("<center><b>Keine Einträge in der Datenbank gefunden!</b></center><br />");
} else {
$i=0;
while($showartcolour = mysql_fetch_array($results))
{
$i++;
images($showartcolour['art'], $deutsch[$showartcolour['colour']], $showartcolour['colour'], $showartcolour['url']);
if ($i % 5 == 0) {echo '</tr><tr>';}
}
}
}
Die Funktion dazu sieht so aus:
PHP:
function images($art, $colour, $colour2, $url)
{
for($i = 0; $i < count($colour); $i++) {
echo("<td><a href=\"db.php?art=".$art"\"><img src=\"http://images.domain.de/".$url."\" alt=\"".$colour." ".$art."\" /><br />".$colour." ".$art."</a></td>");
}
}
Doch irgendwie will das ganze nicht so funktionieren wie es soll. Was mache ich falsch?
http://www.neocolours.de/beispiel.gif
Anhänge
Zuletzt bearbeitet: