Bannerrotation mit Scriptbannern

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Topper Harley
Mitglied
Beiträge: 95
Registriert: 29.03.2006 03:49

Bannerrotation mit Scriptbannern

Beitrag von Topper Harley »

Ich würde gerne in meinen Header eine bannerrotation einbauen. Problem ist nur, dass es sich nicht um Standardbanner mit href und img handelt, sondern um gescriptete:


Banner 1

<script type="text/javascript" src="http://xxx.com/js/xxx.js"></script>
<script type="text/javascript" src="http://xxx.com/js?wp_id=xxxxx"></script>
<noscript><a href="http://xxx.com/click?sid=xxxxx&ts=[timestamp]">
<img src="http://xxx.com/banner?sid=xxxxx&ts=[timestamp]" border="0"></a></noscript>


Banner 2

<script type="text/javascript" src="http://xxx.com/js/xxx.js"></script>
<script type="text/javascript" src="http://xxx.com/js?wp_id=xxxxx"></script>
<noscript><a href="http://xxx.com/click?sid=xxxxx&ts=[timestamp]">
<img src="http://xxx.com/banner?sid=xxxxx&ts=[timestamp]" border="0"></a></noscript>


Wie bastel ich das richtig? :o
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Na wie würdest du es denn machen wenn es Bilder wären? Da tauscht du doch auch nur Text aus, was ist also bei Skripten anders?
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Topper Harley
Mitglied
Beiträge: 95
Registriert: 29.03.2006 03:49

Beitrag von Topper Harley »

Ich kenne nur diese Möglichkeit:

Code: Alles auswählen

<SCRIPT LANGUAGE="JavaScript">

var nb=2;
var link = new Array();
var i;
i=Math.ceil(Math.random()*nb);

link[1]='<A HREF="..."><IMG SRC="..."> </A><br>';

link[2]='<A HREF="..."><IMG SRC="..." ></A><br>';

document.write(link[i]);

</script>
Funktioniert aber leider nicht :cry:
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Wie wäre es wenn du das einfach in der PHP Seite festlegst? Das geht dann universell und so wie das Skript aussieht ändert es seine Darstellung eh nicht nach x Sekunden oder so. Dann hättest du gleich auch noch den Vorteil, dass du einen Banner darstellst, auch wenn JS abgeschaltet ist.

Code: Alles auswählen

$banners = array('htmlcode 1', 'htmlcode 2');
srand();
$banner = $banners[rand(1,2)];
echo $banner;
Viel einfacher geht's eigentlich kaum noch. Statt echo natürlich beim Einbau ins Forum dann eben $template->assign_vars(...); bei phpBB 2 in der page_header.php und dann die Ersetzung in die gewünschte Datei (vermutlich overall_header.tpl) und bei phpBB3 in die functions.php in der page_header Funktion und den Platzhalter eben dann in der overall_header.html (oder einer beliebigen anderen Datei wo das eben dargestellt werden soll).
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Topper Harley
Mitglied
Beiträge: 95
Registriert: 29.03.2006 03:49

Beitrag von Topper Harley »

Wie (und wo) genau mach ich das in der page_header.php?
Sorry, aber was PHP betrifft, ist mein Kenntnisstand unterirdisch :(

Zu viel Code entfernt! //gn#36
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Ganze Dateien bitte verlinken, nicht in den Post kopieren.... KB:datei

Also phpBB2...

Da es nur darum geht dass das angezeigt wird, bau es direkt oben unter das define('HEADER_INC', true); ein, aber dann NICHT mit echo, sondern mit

Code: Alles auswählen

$template->assign_vars(array('BANNER_ROTATION' => $banner));
Im Template entsprechend dann {BANNER_ROTATION} da hin, wo du es hin haben willst.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Topper Harley
Mitglied
Beiträge: 95
Registriert: 29.03.2006 03:49

Beitrag von Topper Harley »

gn#36 hat geschrieben:Ganze Dateien bitte verlinken, nicht in den Post kopieren....
Kommt nicht wieder vor :)

Also dann so in die pageheader einfügen?

Code: Alles auswählen

$banners = array('<script type="text/javascript" src="http://xxx.com/js/xxx.js"></script> 
<script type="text/javascript" src="http://xxx.com/js?wp_id=xxxxx"></script> 
<noscript><a href="http://xxx.com/click?sid=xxxxx&ts=[timestamp]"> 
<img src="http://xxx.com/banner?sid=xxxxx&ts=[timestamp]" border="0"></a></noscript>', '<script type="text/javascript" src="http://xxx.com/js/xxx.js"></script> 
<script type="text/javascript" src="http://xxx.com/js?wp_id=xxxxx"></script> 
<noscript><a href="http://xxx.com/click?sid=xxxxx&ts=[timestamp]"> 
<img src="http://xxx.com/banner?sid=xxxxx&ts=[timestamp]" border="0"></a></noscript>'); 
srand(); 
$banner = $banners[rand(1,2)]; 
$template->assign_vars(array('BANNER_ROTATION' => $banner));
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Jupp.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Topper Harley
Mitglied
Beiträge: 95
Registriert: 29.03.2006 03:49

Beitrag von Topper Harley »

Hat geklappt :o :) :) :)


Vielen Dank!!

Edit: Aber irgendwie hab ich den Eindruck, dass da kaum Rotation drin ist... in 95% der Fälle wird derselbe Banner gezeigt?
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Ist auch ein kleiner Fehler drin...

Das Array beginnt bei 0 zu zählen...

also besser rand(0,1) oder evtl. funktioniert das mit ein paar mehr möglichen Werten besser:

Code: Alles auswählen

rand(0, 100) % 2
anstelle von [php:rand]
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Antworten

Zurück zu „Coding & Technik“