phoenix430
Lt. Commander
- Registriert
- Juni 2008
- Beiträge
- 1.446
Hallo Leute,
Ich habe folgendes Problem mit einem Formular:
Ich habe ein Formular in der ich 2 verschiedene Select Befehle brauche. Mit meinem ersten Select lasse ich die ausgewählten DropDowns als Ergebnis anzeigen.
In meinem zweiten Select gebe ich aus, ob ein Artikel vorhanden ist oder nicht. Beide Select Befehle habe ich getestet (mit Navicat) und funktionieren. Ich bekomme aber die 2 Abfragen nicht zu einer zusammen.
Zum Verständis mein Code.
Hier baue ich die Auswahl für meinen ersten Select:
Hier meine Ausgabe:
und das ist quasi meine zweite Abfrage
Und wie kann ich diese Abfrage nach meiner ersten Select Abfrage einbinden? Die query kann ja nur eins verarbeiten oder?
Ich habe folgendes Problem mit einem Formular:
Ich habe ein Formular in der ich 2 verschiedene Select Befehle brauche. Mit meinem ersten Select lasse ich die ausgewählten DropDowns als Ergebnis anzeigen.
In meinem zweiten Select gebe ich aus, ob ein Artikel vorhanden ist oder nicht. Beide Select Befehle habe ich getestet (mit Navicat) und funktionieren. Ich bekomme aber die 2 Abfragen nicht zu einer zusammen.
Zum Verständis mein Code.
Hier baue ich die Auswahl für meinen ersten Select:
PHP:
$root=mysql_connect("localhost", "Benutzer", "Passwort");
mysql_select_db("Datenbank");
$abfrage="";
if ($titel <> ""){
$suchworte = explode(" ",$titel);
$count = count($suchworte);
$abfrage.="(";
for($i=0;$i <$count;$i++){
$abfrage.="Titel LIKE '%".$suchworte[$i]."%'";
if ($i<($count-1)){
$abfrage.= " AND ";
}
}
$abfrage.= " ) ";
}
if ($beschreibung <> ""){
$suchworte = explode(" ",$beschreibung);
$count = count($suchworte);
if ($abfrage <> ""){
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
for($i=0;$i <$count;$i++){
$abfrage.="Bemerkungen LIKE '%".$suchworte[$i]."%'";
if ($i<($count-1)){
$abfrage.= " AND ";
}
}
$abfrage.= " ) ";
}
if ($begleitmaterial <> ""){
$suchworte = explode(" ",$begleitmaterial);
$count = count($suchworte);
if ($abfrage <> ""){
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
for($i=0;$i <$count;$i++){
$abfrage.="Begleitmaterial LIKE '%".$suchworte[$i]."%'";
if ($i<($count-1)){
$abfrage.= " AND ";
}
}
$abfrage.= " ) ";
}
// ID Liste
if ($typ <> 0){
if ($abfrage <> ""){
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
$abfrage.="KAT_typ = ".$typ;
$abfrage.= " ) ";
}
if ($art <> 0){
if ($abfrage <> ""){
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
$abfrage.="KAT_art = ".$art."";
$abfrage.= " ) ";
}
if ($fachbereich <> 0){
if ($abfrage <> ""){
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
$abfrage.="KAT_fachbereich = ".$fachbereich."";
$abfrage.= " )";
}
if ($schwierigkeit <> 0){
if ($abfrage <> ""){
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
$abfrage.="KAT_schwierigkeit = ".$schwierigkeit."";
$abfrage.= " )";
}
if ($besetzung <> 0){
if ($abfrage <> ""){
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
$abfrage.="KAT_besetzung = ".$besetzung."";
$abfrage.= " )";
}
if ($genre <> 0){
if ($abfrage <> ""){
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
$abfrage.="KAT_genre = ".$genre."";
$abfrage.= " )";
}
// Liste
if (($herausgeber <> "") AND ($herausgeber <> "Bitte wählen")){
if ($abfrage <> "") {
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
$abfrage.='herausgeber = "'.$herausgeber.'"';
$abfrage.= " )";
}
if (($ort <> "") AND ($ort <> "Bitte wählen")){
if ($abfrage <> "") {
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
$abfrage.='ort = "'.$ort.'"';
$abfrage.= " )";
}
if (($standort <> "") AND ($standort <> "Bitte wählen")){
if ($abfrage <> ""){
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
$abfrage.='standort = "'.$standort.'"';
$abfrage.= " )";
}
if (($komponist <> "") AND ($komponist <> "Bitte wählen")){
if ($abfrage <> ""){
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
$abfrage.='komponist = "'.$komponist.'"';
$abfrage.= " )";
}
if (($verlag <> "") AND ($verlag <> "Bitte wählen")){
if ($abfrage <> ""){
$abfrage.= " AND (";
}
else {
$abfrage.= " (";
}
$abfrage.='abfrage = "'.$abfrage.'"';
$abfrage.= " )";
}
PHP:
$auswertung = "SELECT * FROM titel WHERE";
$auswertung.= $abfrage;
$auswertung2 ="SELECT
MAX(a.ID) AS Maximum,
t.*,
CASE WHEN a.rueckgabedatum Is Null Then 'Titel ist ausgeliehen' Else 'Titel ist verfügbar' End As Ausgeliehen
FROM titel t
LEFT JOIN ausgeliehen a
ON a.Titelnr = t.ID
GROUP BY Ausleihdatum DESC";
$ergebnis = mysql_query($auswertung);
while($row = mysql_fetch_object($ergebnis)){
echo '<tr>'."\r\n";
echo '<td><a href = "weiterleiten.php?id='.$row->ID.'" target ="blank"/>'.$row->Titel.'</a></td>'."\r\n";
echo '<td>'.$row->Komponist.'</td>'."\r\n";
echo '<td>'.$row->Herausgeber.'</td>'."\r\n";
echo '<td>'.$row->Verlag.'</td>'."\r\n";
echo '<td>'.$row->Ausgeliehen.'</td>'."\r\n";
echo '</tr>';
}
echo '</table>';
?>
und das ist quasi meine zweite Abfrage
PHP:
$auswertung2 ="SELECT
MAX(a.ID) AS Maximum,
t.*,
CASE WHEN a.rueckgabedatum Is Null Then 'Titel ist ausgeliehen' Else 'Titel ist verfügbar' End As Ausgeliehen
FROM titel t
LEFT JOIN ausgeliehen a
ON a.Titelnr = t.ID
GROUP BY Ausleihdatum DESC";