Dieses Thema wurde sicher schon oft behandelt. Ich habe aber noch nichts passendes gefunden wo ich nachschauen kann. Vielleicht kann mir jemand einen Tip oder Tutorial angeben dass mir weiterhilft.
folgendes: Ich habe auf einer Seite 3 dynamische Abfragen 1. Abfage 'Hersteller' , 2 Abfrage 'Kategorie' und 3. Abfrage 'Preis' . Die Werte die aufgrund dieser Abfrage ausgesucht wurden werden auf einer 'include' Seite (case) 'index99b.php.inc' angezeigt. So weit so gut. Dies funktioniert, wenn ich jede Abfrage einzeln ausgebe. Wie schaffe ich es die 3 Abfragen miteinander zu verknüpfen ? zBsp. Hersteller 'Rolf Benz' und Kategorie 'Stühle' und Preis '600' ausgewählt, so dass die Ausgabe alle Rolf Benz Stühle bis 600.- auflistet.
so siehts aus..
<select name="lieferantID" class="Smenu" >
PHP-Code:
<?php
do {
?>
<option value="<?php echo $row_rsLieferant['lieferantID']?>"<?php if (!(strcmp($row_rsLieferant['lieferantID'], $row_rsLieferant['lieferantID']))) {echo "SELECTED";} ?>><?php echo $row_rsLieferant['prodLieferant']?><?php echo $_SESSION["hersteller"]; ?></option>
<?php
} while ($row_rsLieferant = mysql_fetch_assoc($rsLieferant));
$rows = mysql_num_rows($rsLieferant);
if($rows > 0) {
mysql_data_seek($rsLieferant, 0);
$row_rsLieferant = mysql_fetch_assoc($rsLieferant);
}
?>
<option value="%" selected="selected">HERSTELLER ></option>
</select>
PHP-Code:
<?php
do {
?>
<option value="<?php echo $row_rsCategory['catID']?>"<?php if (!(strcmp($row_rsCategory['catID'], $row_rsCategory['catID']))) {echo "SELECTED";} ?>><?php echo $row_rsCategory['catName']?></option>
<?php
} while ($row_rsCategory = mysql_fetch_assoc($rsCategory));
$rows = mysql_num_rows($rsCategory);
if($rows > 0) {
mysql_data_seek($rsCategory, 0);
$row_rsCategory = mysql_fetch_assoc($rsCategory);
}
?>
<option value="%" selected="selected">KATEGORIE ></option>
</select></td>
</tr>
<tr valign="middle" class="Slink">
<td height="30" align="center" class="ShellgrauC"> <select name="pricelimit" class="Smenu">
<option value="99999"selected="selected">PREIS LIMIT ></option>
<option value="9000">bis sFr. 9000</option>
<option value="8000">bis sFr. 8000</option>
<option value="7000">bis sFr. 7000</option>
<option value="6000">bis sFr. 6000</option>
<option value="5000">bis sFr. 5000</option>
<option value="4000">bis sFr. 4000</option>
<option value="3000">bis sFr. 3000</option>
<option value="2000">bis sFr. 2000</option>
<option value="1000">bis sFr. 1000</option>
<option value="500">bis sFr. 500</option>
</select></td>
</tr>
<tr valign="middle" class="Slink">
<td height="30" align="center" class="ShellgrauC"> <input type="submit" name="Submit" value="Suchen" />
</td>
</tr>
<tr valign="middle" class="Slink">
<td height="60" align="left" class="ShellgrauC"><select name="select">
</select></td>
</tr>
PHP-Code:
<?php
switch ($_GET['seite'])
{
case 'artikel':
include('index99b.php.inc');
break;
default:
include('start.php.inc');
}
?>
include Seite 'index99b.php.inc' :
PHP-Code:
<?php
if ($lieferantID >= '2')
{
$bedingung = " WHERE '$lieferantID' = prodLieferantID ";
}
elseif ($categorieID >= '1')
{
$bedingung = " WHERE '$categorieID' = prodCatID ";
}
elseif ($pricelimit)
{
$bedingung = " WHERE prodPrice <= '$pricelimit' ";
}
?>
PHP-Code:
<?php
// Datei mit Code einbinden
include_once('blaettern.php.inc');
// Aktuelle Seite ermitteln
$active_page = !empty($_GET['page']) ? $_GET['page'] : 0;
// Anzahl aller Eintraege ermitteln
mysql_select_db($database_connPHP, $connPHP);
$result=mysql_query("SELECT COUNT(prodID) FROM tblproduct2 $bedingung");
list($entries)=mysql_fetch_row($result);
// Objekt erstellen, aktuelle Seite und Anzahl Ergebnisse uebergeben
$blaettern=new blaettern($active_page, $entries);
// URL fuer Links definieren
// Kann man auch im Code fest verankern und sich somit diesen Aufruf sparen
$blaettern->set_Link_Href($_SERVER['PHP_SELF'].'?seite=artikel&lieferantID='.$lieferantID.'&categorieID='.$categorieID.'&pricelimit='.$pricelimit.'&page=');
?>
<?php
// Erste Linkliste erstellen und ausgeben
echo $blaettern->create();
?>
PHP-Code:
<?php
// Abfrage mit Begrenzung (LIMIT) ausfuehren
$result=mysql_query("SELECT prodName, prodID, prodPrice, prodKatalogpreis, prodLieferantID, prodCatID, prodLgPic FROM tblproduct2 $bedingung ORDER by prodCatID LIMIT ".($blaettern->get_Epp() * $blaettern->get_Active_Page()).', '.$blaettern->get_Epp());
// Wenn Daten gefunden wurden, dann ausgeben
if (mysql_num_rows($result)>0) {
while (list($prodName,$prodID,$prodPrice,$prodKatalogpreis,$prodLieferantID,$prodCatID,$prodLgPic)=mysql_fetch_row($result)) {
?>
Wäre für eure Hilfe sehr dankbar.