PyroGX
Titel: Bannerrotation v1.0
Version: 1.0
Beschreibung: Mit diesem Hack könnt ihr überall in eurem Forum Werbebanner anzeigen lassen die ihr bequem übers ACP verwalten könnt.
Außerdem bietet der Hack noch folgende Features:
» Eingabe von Werbebanner im ACP
» Unterschiedliche Kategorien für Banner einstellbar
» Auswahl der Banner bei der Anzeige auf eine Kategorie festlegen
» Anzeien eines ganz bestimmten Banners
» Bearbeiten von Kategorien im ACP
» Bestimmte Anzahl von Klicks und/oder Views einstellbar
» Werbeuser bekommen niemals ihre eigenen Banner angezeigt
» Für jede Gruppe einstellbar ob die Gruppe die Werbebanner angezeigt bekommt
» Übersicht im UCP für User die Banner gebucht haben.
» Anstatt eines normalen Banners könne auch komplette Codes wie z.B. der Code von Google AdSense benutzt werden
» Anzeige der Klickrate
Der Aufruf erfolgt folgendermaßen: "<expression>banner('kategorie','bannerid')</expression>".
Um einen belibiges Banner im Forum anzeigen zu lassen einfach "<expression>banner()</expression>" in irgendein Template einfügen.
Wenn ihr nur Banner der kategorie "2" anzeigen lassen wollt müsst ihr eingeben: "<expression>banner(2)</expression>".
Um ein ganz bestimmtes Banner anzeigen zu lassen (sagen wir mal das Banner mit der ID "5") müsst ihr folgenden Befehl verwenden: "<expression>banner('',5)</expression>".
----
weiter zum Download
Jon
also fehler gibt es schon:
bei der installation wird der 3schritt nicht angezeigt.Dadurch muss man die sprachvariabeln selbst einfügen
Außerdem fehlen alle acp templates
PyroGX
werde gleich einen korrigierte setup hochladen
man muss die ACP template noch cachen
schreibe ich auch noch schnell in die installationsanleitung
geht der rest denn?
Jon
Sorry,war mein Fehler(die acp templates cachen weiß ich schon

)
Hab den ordner mit den acp templates übersehen
Mir fällt gerade auf,dass,wenn noch mehr menü einträge im acp sind,als im Standard,dann kommt der Punkt"Bannerscript" nicht ganz unten
Ist das absicht?Wenn nein...
OF-Shadow
Hallo PyroGX!
Erstmal vielen Dank für Deine Erweiterung der Bannerrotation von Jakob!
Ich hab ihn auf meinen WBB 2.1.5 installiert, Templates gecached (auch ACP!),
kann im ACP auch die neuen Funktionen inkl. Kategorien einstellen.
Was mir aufgefallen ist:
- Kategorieeinstellung wird nicht übernommen (steht bei mir auf 0, hab auch schon eine neue zum testen erstellt gehabt, keine Änderung)
- Aufruf mit <expression>banner()</expression> zeigt mir nichts an.
- Aufruf mit <expression>banner(zahl)</expression> auch nicht.
- Aufruf mit <expression>banner('kategorie','bannerid')</expression> zeigt mir den Banner an.
Ich hatte zum Test ganz neue Banner erstellt.
PyroGX
den fehler mit der kategorie kann ich bestätigen
um den fehler zu beheben sucht in der datei /acp/ads.php folgende zeile:
code: |
1:
2:
|
$db->query("INSERT INTO bb".$n."_ads (userid,bannerurl,kategorie,alt,hyperlink,code,views_available,klicks_available) VALUES ('".intval($_POST['userid'])."','".addslashes($_POST['bannerurl'])."','".intval($_POST['kat'])."','".addslashes($_POST['alt'])."','".addslashes($_POST['hyperlink'])."','".addslashes($_POST['code'])."','".intval($_POST['views'])."','".intval($_POST['klicks'])."')");
|
|
und ersetzt diese mit:
code: |
1:
2:
|
$db->query("INSERT INTO bb".$n."_ads (userid,bannerurl,kategorie,alt,hyperlink,code,views_available,klicks_available) VALUES ('".intval($_POST['userid'])."','".addslashes($_POST['bannerurl'])."','".intval($_POST['kategorie'])."','".addslashes($_POST['alt'])."','".addslashes($_POST['hyperlink'])."','".addslashes($_POST['code'])."','".intval($_POST['views'])."','".intval($_POST['klicks'])."')");
|
|
sucht dei zeile:
code: |
1:
2:
|
$db->query("UPDATE bb".$n."_ads SET userid='".intval($_POST['userid'])."',bannerurl='".addslashes($_POST['bannerurl'])."',kategorie='".addslashes($_POST['bannerurl'])."',alt='".addslashes($_POST['alt'])."',hyperlink='".addslashes($_POST['hyperlink'])."',code='".addslashes($_POST['code'])."',views_available='".intval($_POST['views'])."',klicks_available='".intval($_POST['klicks'])."',verhaeltnis='".intval($_POST['klicks'])."' WHERE adid='".intval($_POST['adid'])."'");
|
|
und ersetzt diese durch:
code: |
1:
2:
|
$db->query("UPDATE bb".$n."_ads SET userid='".intval($_POST['userid'])."',bannerurl='".addslashes($_POST['bannerurl'])."',kategorie='".addslashes($_POST['kategorie'])."',alt='".addslashes($_POST['alt'])."',hyperlink='".addslashes($_POST['hyperlink'])."',code='".addslashes($_POST['code'])."',views_available='".intval($_POST['views'])."',klicks_available='".intval($_POST['klicks'])."',verhaeltnis='".intval($_POST['klicks'])."' WHERE adid='".intval($_POST['adid'])."'");
|
|
ich werde den fehler in der beta 3 heute nachmittag korrigieren und dann hochladen
warum bei dir banner() nicht geht wundert mich
versuch mal banner("","")
OF-Shadow
Hallo Pyrogx,
so schlau war ich noch und habs probiert, aber es hilft nichts... ich kann nur einzelne Banner einblenden.
Bug1 -->
Im ACP wenn man den HTML Code nutzt und dann nur die nötigen Felder ausfüllt (Views, klicks, Verhältnis, HTML Code) erscheint eine Meldung, dass nicht alle Felder ausgefüllt wurden.
Bug 2 (nur Sprachvariable) -->
Verhältnis:
Anzigehäfigkeit im Vergleich zu anderen Bannern:
PyroGX
füge bitte mal in der phpinclude hinter den beiden zeilen:
code: |
1:
2:
|
function banner($kat = "",$id = "")
{ |
|
folgendes ein
code: |
1:
2:
3:
4:
|
unset($kat);
unset($id);
|
|
guck dann mal was passiert (achtung, der aufruf mit ner kategorie oder ner bestimmten id ist dann nicht mögich)
achja
welche PHP version benutzt du?
die beiden bugs werde ich ebenfalls in der beta3 korrigieren (also heute nachmittag)
OF-Shadow
Hallo,
hat nichts gebracht. im Template hab ich die Funktion aufgerufen, ohne Kategorie und Banner, einfach banner()
PHP 4.3.10-13 (Debian)
PyroGX
öööööhm
hast du deine userid beim banner eingetragen?
OF-Shadow
Hab ich eingetragen, hab es aber auch schon mit einer anderen versucht, keine Änderung... Ich bekomm nur eine Ausgabe mit banner('','zahl'), ansonsten tut sich nichts.........
Ich hab eben einfach mal eine beliebige Zahl in das Feld für die Kategorie eingetragen, dann zeigt er mir trotzdem den Banner an... als ob er die Kategorie gar nicht kennt
banner('24','3') hab ich benutzt, wobei es die 24 nicht gibt
PyroGX
das ist absicht
wenn du ne ID mit angibst wird die kategorie ignoriert (die ID is ja einmalig)
versuche bitte noch nen weiteres banner einzufügen und guck was passiert (wenn du es mit banner() aufrufst)
OF-Shadow
Nein, da geht auch nichts.

Nutzt eigentlich niemand sonst dieses gute Addon? Kann vielleicht Jemand mal sagen, ob es nur bei mir nicht klappt?
nAsH
eingebaut & folgender fehler erscheint...
Zitat: |
Fatal error: Call to undefined function: wbbads() in /***/***/***/wbb2/global.php(226) : eval()'d code on line 52 |
Zeile 52:
code: |
1:
|
require('./acp/lib/class_smtp.php'); |
|
nAsH
/e mein fehler

hatte vergessen das "<expression>banner()</expression>" zu ändern. nun wird aber kein banner mehr angezeigt. irgendwie is da noch der wurm drin
Jon
dann hast du es falsch eingebaut,nash
@of-shadow
stell dich halt nich so an und bau den von jakob aus,dann bauste den hier ein und fertisch
PyroGX
können die die ihn schon eingebaut haben mal folgende phpinclude benutzen?
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
|
function banner($kat = "",$id = "")
{
global $db,$n,$wbbuserdata;
if(checkpermissions('bekommt_werbung_angezeigt'))
{
if(!empty($id))
{
$result=@$db->query_first("SELECT * FROM bb".$n."_ads WHERE adid= ".$id);
if(!empty($result['adid']))
{
$db->query("UPDATE bb".$n."_ads SET views_used=views_used+1 WHERE adid=".$result['adid']);
if(empty($result['code']))
{
return "<a href=\"ads.php?gotoid=".$result['adid']."\" target=\"_blank\"><img src=\"".$result['bannerurl']."\" alt=\"".$result['alt']."\" border=\"0\"></a>";
}
else
{
return $result['code'];
}
}
}
else
{
if(!empty($kat))
{
$kat = " WHERE kategorie = ".$kat;
}
$rows = $db->unbuffered_query("SELECT * FROM bb".$n."_ads".$kat);
$i = 1;
while($row = $db->fetch_array($rows))
{
$var++;
if(($row['views_available'] == "0" || $row['views_used'] < $row['views_available']) && ($row['klicks_available'] == "0" || $row['klicks_used'] < $row['klicks_available']) AND $row['userid'] != $wbbuserdata['userid'])
{
$v = 0;
while($row['verhaeltnis'] > $v)
{
$anzeigen[$i] = $row['adid'];
$v++;
$i++;
}
}
}
if(count($anzeigen) > 0)
{
mt_srand((double)microtime()*1000000);
$rand = mt_rand(1,count($anzeigen));
$result = $db->query_first("SELECT * FROM bb".$n."_ads WHERE adid = ".$anzeigen[$rand]);
if(!empty($result['adid']))
{
$db->query("UPDATE bb".$n."_ads SET views_used=views_used+1 WHERE adid=".$result['adid']);
if(empty($result['code']))
{
return "<a href=\"ads.php?gotoid=".$result['adid']."\" target=\"_blank\"><img src=\"".$result['bannerurl']."\" alt=\"".$result['alt']."\" border=\"0\"></a>";
}
else
{
return $result['code'];
}
}
}
}
}
} |
|
Jon
hm,bei mir wird immer nur ein banner angezeigt,obwohl 4 eingetragen sind
Mal guggen
PyroGX
haste beim verhältnis was eingetragen?
PyroGX
mindestens 1
/edit
werde in ca 15-30 minuten die beta 3 veröffentlichen