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.