Datenbankabfrage
Verfasst: So 3. Sep 2006, 17:35
Ich weiß es gehört nicht ins Contenidoforum aber vieleicht kann sich das mal einer anschauen.
Habe eine Datenbank abfrage über mehrere Tabellen realiesiert sie funktioniert sieht aber nicht so schöhn aus.
Kann man die abfrage auch anders z.b mit "left join"machen.
Kann man die Abfrage in eine Schleife setzen
Wenn niemand Antwortet bin ich auch nicht traurig es funzt ja.
Muß mich doch noch mehr mit PHP, MySql auseinandersetzten.
Habe eine Datenbank abfrage über mehrere Tabellen realiesiert sie funktioniert sieht aber nicht so schöhn aus.
Kann man die abfrage auch anders z.b mit "left join"machen.
Code: Alles auswählen
if($name1[0]==""){$kat1="null";}else{ $kat1 = $name1[0];}
if($name1[1]==""){$kat2="null";}else{ $kat2 = $name1[1];}
if($name1[2]==""){$kat3="null";}else{ $kat3 = $name1[2];}
if($name1[3]==""){$kat4="null";}else{ $kat4 = $name1[3];}
if($name1[4]==""){$kat5="null";}else{ $kat5 = $name1[4];}
if($name1[5]==""){$kat6="null";}else{ $kat6 = $name1[5];}
if($name1[6]==""){$kat7="null";}else{ $kat7 = $name1[6];}
$db2 = new DB_Contenido;
$sql =$sql = 'SELECT
B.ku_nr,
B.name,
B.kuenstlername,
B.vorname,
B.strasse,
B.plz,
B.ort,
B.tel,
B.fax,
B.mobil,
B.email,
B.www,
C.beschreibung,
C.personen,
C.zielgruppe,
C.publikumsgroese,
C.programmdauer,
C.preis,
C.referenzen,
(D.january +
D.february +
D.march +
D.april +
D.may +
D.june +
D.july +
D.august +
D.september +
D.october +
D.november +
D.december)AS besuche
FROM
'.$cfg["tab"]["frontdatkategorie"].' AS A,
'.$cfg["tab"]["frontdatadress"].' AS B,
'.$cfg["tab"]["frontdatkuenstlerbesch"].' AS C,
'.$cfg["tab"]["frontdatstatistic"].' AS D
WHERE
((A.kat_id1 = "'.$kat1.'" OR
A.kat_id2 = "'.$kat1.'" OR
A.kat_id3 = "'.$kat1.'" OR
A.kat_id4 = "'.$kat1.'" OR
A.kat_id5 = "'.$kat1.'" OR
A.kat_id6 = "'.$kat1.'" OR
A.kat_id7 = "'.$kat1.'") OR
(A.kat_id1 = "'.$kat2.'" OR
A.kat_id2 = "'.$kat2.'" OR
A.kat_id3 = "'.$kat2.'" OR
A.kat_id4 = "'.$kat2.'" OR
A.kat_id5 = "'.$kat2.'" OR
A.kat_id6 = "'.$kat2.'" OR
A.kat_id7 = "'.$kat2.'") OR
(A.kat_id1 = "'.$kat3.'" OR
A.kat_id2 = "'.$kat3.'" OR
A.kat_id3 = "'.$kat3.'" OR
A.kat_id4 = "'.$kat3.'" OR
A.kat_id5 = "'.$kat3.'" OR
A.kat_id6 = "'.$kat3.'" OR
A.kat_id7 = "'.$kat3.'") OR
(A.kat_id1 = "'.$kat4.'" OR
A.kat_id2 = "'.$kat4.'" OR
A.kat_id3 = "'.$kat4.'" OR
A.kat_id4 = "'.$kat4.'" OR
A.kat_id5 = "'.$kat4.'" OR
A.kat_id6 = "'.$kat4.'" OR
A.kat_id7 = "'.$kat4.'") OR
(A.kat_id1 = "'.$kat5.'" OR
A.kat_id2 = "'.$kat5.'" OR
A.kat_id3 = "'.$kat5.'" OR
A.kat_id4 = "'.$kat5.'" OR
A.kat_id5 = "'.$kat5.'" OR
A.kat_id6 = "'.$kat5.'" OR
A.kat_id7 = "'.$kat5.'") OR
(A.kat_id1 = "'.$kat6.'" OR
A.kat_id2 = "'.$kat6.'" OR
A.kat_id3 = "'.$kat6.'" OR
A.kat_id4 = "'.$kat6.'" OR
A.kat_id5 = "'.$kat6.'" OR
A.kat_id6 = "'.$kat6.'" OR
A.kat_id7 = "'.$kat6.'") OR
(A.kat_id1 = "'.$kat7.'" OR
A.kat_id2 = "'.$kat7.'" OR
A.kat_id3 = "'.$kat7.'" OR
A.kat_id4 = "'.$kat7.'" OR
A.kat_id5 = "'.$kat7.'" OR
A.kat_id6 = "'.$kat7.'" OR
A.kat_id7 = "'.$kat7.'")) AND
A.ku_nr = B.ku_nr AND
B.ku_nr = C.ku_nr AND
C.ku_nr = D.ku_nr
ORDER BY besuche DESC
LIMIT 0,10';
Code: Alles auswählen
(A.kat_id1 = "'.$kat1.'" OR
A.kat_id2 = "'.$kat1.'" OR
A.kat_id3 = "'.$kat1.'" OR
A.kat_id4 = "'.$kat1.'" OR
A.kat_id5 = "'.$kat1.'" OR
A.kat_id6 = "'.$kat1.'" OR
A.kat_id7 = "'.$kat1.'") OR
(A.kat_id1 = "'.$kat2.'" OR
A.kat_id2 = "'.$kat2.'" OR
A.kat_id3 = "'.$kat2.'" OR
A.kat_id4 = "'.$kat2.'" OR
A.kat_id5 = "'.$kat2.'" OR
A.kat_id6 = "'.$kat2.'" OR
A.kat_id7 = "'.$kat2.'") OR
Muß mich doch noch mehr mit PHP, MySql auseinandersetzten.