ja war war etwas knapp erklärt...

)
ich hab eine form mit mehreren suchmöglichkeiten durch die dann der inhalt mehrerer tabellen in einer tabelle aufgelistet werden.
füge ich jetzt zum bestehenden query dies hier an:
PHP-Code:
and t_kdansparts.f_depart like '" . $sqldepart . "' OR '" . $sqldepart2 . "'
s.o. kann ich nur letzeteres benutzten also nur das dropdown menü und nicht die texteingabe.
bei der texteingabe liestet er dann alles auf auch die zeilen in denen nicht die übergebenen werte enthalten sind.
zur vollständigkeit der fast komplette code. nehme stark an das liegt am query...
DAS QUERY
PHP-Code:
<?
$sql='';
if (($edtKunde != '') || ($cboKunde == '*')) {
$sqlKunde = '%' ;
if ($edtKunde != '*') {
$sqlKunde = $sqlKunde . $edtKunde . '%';
}
} else {
$sqlKunde = $cboKunde;
}
$sqlPhone = '%' . $edtPhone . '%';
if ($cboKette == '*') {
$sqlKette = '%';
} else {
$sqlKette = $cboKette;
}
$sqlSort = $cboSort;
$sqldepart = '%' . $depart . '%'; <--depart zusätzliche variable aus der form.. ich mpsste wie oben noch zwei weitere hinzufügen je nach dem in welchem feld man sucht
(dd menü, checkboxen, textfeld....)
$sql = "select t_kunden.*,
t_servicev.*,
t_kdansparts.*,
zz_kette.f_value as f_hotelkette,
zz_reseller.f_value as f_reseller,
zz_inbetriebnahme.f_value as f_inbetriebnahme
from t_kunden
left outer join t_servicev on t_servicev.f_refkunde = t_kunden.f_idkunde
left outer join t_kdansparts on t_kdansparts.f_refkunde = t_kunden.f_idkunde
left outer join t_customer_datafields zz_kette on zz_kette.f_idkunde = t_kunden.f_idkunde
and zz_kette.f_label = 'Hotelkette'
left outer join t_customer_datafields zz_reseller on zz_reseller.f_idkunde = t_kunden.f_idkunde
and zz_reseller.f_label = 'Verkäufer (Firma):'
left outer join t_customer_datafields zz_inbetriebnahme on zz_inbetriebnahme.f_idkunde = t_kunden.f_idkunde
and zz_inbetriebnahme.f_label = 'Datum Inbetriebnmahme:'
where t_kunden.f_kdname like '" . $sqlKunde . "'
and t_kunden.f_telefon like '" . $sqlPhone . "'
and zz_kette.f_value like '" . $sqlKette . "'
and t_kdansparts.f_depart like '" . $sqldepart2 . "'
and t_kdansparts.f_depart like '" . $sqldepart1 . "'
and t_kdansparts.f_depart like '" . $sqldepart . "' <-- nehme ich nur diese zeile funktionierts. alle drei auf einmal gehen nicht.
frage: übergeben textfelder und dropdownlisten auch werte wenn sie gar nicht ausgefüllt sind?
order by $sqlSort ";
?>
Ausschnitt aus der Datei die mir das Query anzeigt:
PHP-Code:
if (!empty($_POST)) {
include("sql/sql_select_ansprech.php");
//echo $datensatz;
$result = mysql_query($sql) OR die(mysql_error());
$str = '?cboKunde=' . $cboKunde .
'&edtKunde=' . $edtKunde .
'&chkSort=' . $chkSort .
'&cboKette=' . $cboKette;
echo '<p align="right"><a target="_blank" href=""><img border="0" src="gfx/pdf_button.png"></a></p>';
echo '<p>Anzahl Datensätze: ' . mysql_num_rows($result) . '</p>';
echo '<table width="100%" border="1">
<tr>
<th width="5%" align="left">Hotel</th>
<th width="5%" align="left">Kette</th>
<th width="12.5%" align="left">Anrede</th>
<th width="7.5%" align="left">Name</th>
<th width="15%" align="left">Vorname</th>
<th width="7.5%" align="left">Abteilung</th>
<th width="15%" align="left">Ort</th>
<th width="7.5%" align="left">Anschrift</th>
<th width="7.5%" align="left">Telefon</th>
<th width="5%" align="left">Telefax</th>
<th width="7.5%" align="left">Mobil</th>
<th width="7.5%" align="left">Email</th>
<th width="7.5%" align="left">Hotel-Email</th>
</tr>';
while($row = mysql_fetch_assoc($result)) {
//include("sql/sql_select_ansprech.php");
echo '<tr>';
if (!empty($row['f_hotelkette'])) {
echo '<td>' . $row['f_hotelkette'] . '</td>';
} else {
echo '<td> </td>';
}
echo '<td>'.$row['f_kdnr'].'</td>';
echo '<td>' . $row['f_kdname'] . '</td>'; <-- geht natürlich weiter sind etwa 10 spalten....
ich poste nicht die form und deren sql abfrage da dies einwandfrei funktioniert.. liegt also nur in der sql abfrage!!
DANKE für Tipps

))
KURZ GESAGT:
Ich möchte 4 checkboxen, 1 textfeld und ein dropdownmenü mit in das formular einbinden und entweder die checkboxen ODER das formular ODER die DD benutzten um nur werte anzuzeigen die den definierten wert im feld f_depart haben... mein ansatz würde ich als richtig sehen da ja nur ein wert übergeben wird da ja nur eine form ausgewählt wird.