2 Abfragen kombinieren

Krypton

abgemeldet
14 Juni 2007
813
90
Hallo,
Habe folgende abfrage (vms1.2) es werden alle banner ausgelesen.
PHP:
$fbanner = db_query ('SELECT t1.* 
           FROM '.$db_prefix.'_gebuchte_werbung t1
   LEFT JOIN '.$db_prefix.'_adscan_userblacklist t4 ON t4.tan = t1.tan AND t4.uid = '.$_SESSION['uid'].'
   LEFT JOIN '.$db_prefix.'_fb_blacklist AS t3 ON t3.kid = t1.kid AND t3.werbeart=t1.werbeart
           LEFT JOIN '.$db_prefix.'_reloads t2
           ON (t1.tan = t2.tan AND (t2.uid = '.$_SESSION['uid'].' OR t2.ip = "'.$ip.'") AND t2.bis >= '.time().') 
           WHERE (t3.kid IS NULL OR LOCATE(t3.sponsor, t1.ziel) = 0) AND t4.tan IS NULL AND t2.tan IS NULL AND t1.werbeart = "forcedbanner" AND t1.menge > 0 AND t1.status = 1 AND t1.verdienst > 0 AND t1.sponsor != '.$_SESSION['uid'].' ORDER BY t1.'.$usr['art'].' '.$usr['sort'].' LIMIT '.$usr['max_forced'].'');
Will es aber mit dieser abfrage kombinieren das banner ausgelesen werden bis auf die, die in der blacklist stehen.

PHP:
$forcedbanner_check = db_query ("SELECT * FROM ".$db_prefix."_blacklist_werbung WHERE tan = '".$f_banner['tan']."' and uid = '".$_SESSION['uid']."'");
 
Aus dem bösen SELECT * kann wohl keiner das Datenbankschema raten ;)

Was is Primärschlüssel? Was is Fremdschlüssel? Was muss wie zusammengeJOINt werden? Wo is das Problem?
 
Script: vms1.2
Aus dem ersten code der in der klick4.php vorhanden ist werden alle banner aus der db ausgelesen.
der 2te code soll mit dem ersten so kombiniert werden das nur banner ausgelesen werden für mich die nicht in miener blacklist stehen.
 
Ursprünglich wollte ich helfen, hatte aber leider das "vms1.2" im ersten Post übersehen.
In Zukunft poste bitte gleich ins richtige Forum. Nicht umsonst steht hier eine fett-rote Ankündigung, die auf die Regeln hinweist ;)
 
Du hast scheinbar schon 2 "Blacklist" Tabellen:

_adscan_userblacklist und _fb_blacklist

Evtl macht es mehr Sinn (bzw. sehr wahrscheinlich) die Daten dort mit einzutragen, anstatt noch eine Tabelle reinzuquetschen, weil egal ob nun JOIN oder wie auch immer, die Performance wird von mehr Tabellen ja nicht besser ;)
 
naja die fb blacklist ist eine persönliche
die adscan ist soweit ich sehe eine für alle user ....
 
die blacklist fügt banner hinzu die ich persönlich für mich sperre.
Durch die abfrage sollen nur banner ausgelesen werden welche in keiner blacklist stehen.