PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Adscan und Bannersortierung



Plati
29.04.2009, 21:56
ich hab seitdem ich Adscan eingabtu habe ein Proplem mit der Bannersortierung.

in der klick4.php sieht ja der Coder mit der Sortierung folgendermaßen aus:

$fbanner = db_query ('SELECT t1.*
FROM '.$db_prefix.'_gebuchte_werbung t1
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 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['var'].' '.$usr['vonu'].' LIMIT '.$usr['max_forced'].'');Den Code muss ich aber durch Adscan verändern in

$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.verdienst DESC LIMIT '.$usr['max_forced']);

Hat jemand einen funktionierenden Code für mich ?

bulli
29.04.2009, 22:00
Was für Probleme hast du den, werden die Banner unsortiert angezeigt ,garnicht angezeigt oder kommt eine Fehlermeldung?

Plati
29.04.2009, 22:01
vor dem Einbau von Adscan wurden sie sortiert angezeigt und danach nicht mehr

Sebmaster
29.04.2009, 22:06
Schau in die vms_gebuchte_werbung, dort hast du bei jeder Spalte die Text enthält (TAN etc.) eine Spaltenkollation stehen. wahrscheinlich latin1_*.
Merk dir diese Kolation.
Gehe nun in ALLE Adscan Tabellen, und stell dort von jeder Spalte die Spaltenkollation auf die aus der gebuchten Werbung um.

Dannach werden sie wieder angezeigt.

Xenon
29.04.2009, 22:21
Ist das die Bannersortierung von adi (mir ) :biggrin1:

Plati
29.04.2009, 22:30
Ja ist sie :thumb:

also wenn ich mich nicht verlesen habe sollte ich es so tun:
vms_gebuchte_werbung sieht so aus:

http://bild-transfer.eu/bild.php/868,vmsgebuchtewerbungOTZAT.jpg (http://bild-transfer.eu)

die vms_adscan sieht so nu aus nachdem ich von latin1_swedish_ci auf utf8....... geändert habe:

http://bild-transfer.eu/bild.php/867,adscanY97SY.jpg (http://bild-transfer.eu)

Hat sich danach aber leider nichts geändert wenn ich es richtig gemcht habe :rolleyes:

Sebmaster
29.04.2009, 22:34
ALLE adscan Tabellen,
also auch fb_blacklist usw:wink:

Hardy
29.04.2009, 22:34
Probiere es mal so



$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['var'].' '.$usr['vonu'].' LIMIT '.$usr['max_forced']);

Sebmaster
29.04.2009, 22:36
Jop, den Query kannste auch noch austauschen, dann ist die Sortierung wieder drin:yes:

Plati
29.04.2009, 22:41
danke euch,hat geklappert :thumb:

aber noch was anderes,die längere Ladezeit wenn ich auf Klick4Lose gehe mit Adscan ist normal oder?

Sebmaster
29.04.2009, 22:51
danke euch,hat geklappert :thumb:

aber noch was anderes,die längere Ladezeit wenn ich auf Klick4Lose gehe mit Adscan ist normal oder?

Jop, kann man aber durch setzen von einem Index schneller machen und zwar mit einem solchen:


ALTER TABLE `vms_fb_blacklist` ADD PRIMARY KEY ( `sponsor` , `kid` , `werbeart` ) ;

Hardy
29.04.2009, 22:53
Jop, kann man aber durch setzen von einem Index schneller machen und zwar mit einem solchen:


ALTER TABLE `vms_fb_blacklist` ADD PRIMARY KEY ( `sponsor` , `kid` , `werbeart` ) ;


kid und werbeart reicht eigentlich

Sebmaster
29.04.2009, 22:57
kid und werbeart reicht eigentlich

Und wenn zwei Sponsoren die selbe KID vergeben?:suspicious: Dann wird nur einer gespeichert:hand:

Xenon
30.04.2009, 08:06
Ich werde mal wenn ich zeit habe dieses Addon erweitern mit einer Anleitung zu adscan.de