Seite 1 von 3

Banner/extra Seite alle 5min anzeigen lassen...

Verfasst: 18.08.2004 23:07
von Berndte
Hallo,

um meine Kopfschmerzen mit dem Tread gäste dürfen nur x beiträge lesen dann registrierung mal ein wenig einzudämmen:

ist es möglich (oder gibts evtl schon einen MOD), dass alle 5min anstatt der aufgeforderten Seite eine andere Seite sehen, so wie bei http://www.spotlight.de/ ... das ganze natürlich nur für nicht eingeloggte User! Man kann das ganze auch über eine Zeitabfrage machen (alle vollen 5min) oder wie auch immer, ich denke der Sinn ist klar geworden.

Ich denke, das ist besser als immer ein Banner anzuzeigen, weil man eine ganze Seite (Stichpunkt "Vorlage für in phpBB eingebundene Seiten") zu gestalten.

danke schonmal fürs Lesen ;)

Gruss Bernd

Verfasst: 23.08.2004 22:19
von Berndte
pushing

Verfasst: 23.08.2004 22:48
von PhilippK
Möglich ist das sicher - nur nicht ganz einfach:
  • Tabelle phpbb_session um ein Feld für letzte Anzeige erweitern und Abfragen entsprechend anpassen
  • Abfrage einbauen und ggf. auf andere Seite weiterleiten
  • Auf der Seite dann den Zähler zurücksetzen und weiterleiten
Braucht etwas PHP-Kenntnis, einiges an Zeit...

Gruß, Philipp

Verfasst: 31.08.2004 18:14
von Berndte
hmm, ich will das nochmal aufrühren....

Geht es denn nicht ohne Datenbankerweiterung, sondern so wie ich schon angedacht habe, einfach die Serverzeit checken und

Code: Alles auswählen

if(**:05 || **:10 || **:15 || **:20........
Also alle 5min das Banner einblenden.

Vielleicht findet sich ja ein Coder, de sich dessen annehmen will, da ich denke, das ist doch netter als ständig ein Banner oben laufen zu lassen und dadurch (grade beim Einsatz von Frames) das Forum in max. Grösse anzeigen zu lassen. Manche Seiten bestehen zu 50% aus Werbung und Nav_frame.

Gruss Bernd

Verfasst: 01.09.2004 20:11
von Berndte
push...

... oder verschiebt es doch ins Coder Forum, wenns da besser passt

Gruss Bernd

Verfasst: 01.09.2004 21:27
von Tuxman
Nee, hier passt es schon ganz gut hin.

Also du willst einen Mod, der für nicht registrierte Benutzer deine Links "irgendwohin" führt, nur nicht dahin, wo sie hinwollten? Nicht sehr benutzerfreundlich... :o

Verfasst: 01.09.2004 21:39
von Berndte
neee, ganz einfach wie in obigen Forum auch gehandhabt.... die Homepage kostet ja auch ne Stange Geld und ich will nicht ständig nen Banner einblenden, sondern nur alle 5min eine Extra Seite, auf der ist dann ein Link "weiterlesen"... habe ich ja oben schon geschrieben.

Verfasst: 14.09.2004 18:34
von Berndte
Hallo,

ich denke ich habe eine Lösung gefunden (zumindest einen Lösungsansatz)

Bezug nehme ich auf den Beitrag "gäste dürfen nur x beiträge lesen dann registrierung". Der verbaute Mod:

Code: Alles auswählen

############################################################## 
## MOD Title: Timeout Mod 
## MOD Author: itst < sc@itst.org > (Sascha Carlin) http://www.itst.org/ 
## MOD Description: This mods allows guests to surf the forums for a predefined time. 
##                  After this time runs out (a little countdown is shown in the header) 
##                  they must either login or register. All other attempts to access the 
##          forums are redirected to a info page. 
## 
##          All setting are done via constants.php. The text for the info page is 
##          set via lang_main.php. 
##          You don't need to use the shipped timeout.php. You can use any file 
##          you want, even a file outside phpBB. 
## 
## MOD Version: 0.1 
## 
## Installation Level: Easy 
## Installation Time: 5 Minutes 
## Files To Edit: 
##                  includes/constants.php 
##                  includes/page_header.php 
##                  includes/sessions.php 
##                  language/*/lang_main.php 
##                  templates/*/overall_header.tpl 
##  
## Included Files:  timeout.php 
############################################################## 
Wenn ich jetzt nur noch mittels einem Link folgenden Eintrag in der Datenbank löschen kann, dann bin ich schon zufrieden:

Code: Alles auswählen

session_id  session_user_id  session_start  session_time  session_ip  session_page  session_logged_in  
      bb758037c1eb656d157e11ba16193a45 -1 1095140250 1095140250 c27fcd02 -99 0
ich hoffe man erkennt was

Also müsste die aktuelle IP gelesen werden und der entsprechende Eintrag in der Datenbank gelöscht werden. Die IP kann ja, wie ich bemerkt habe, auch mehrmals vorkommen... in diesem Fall müssten entweder alle Einträge gelöscht werden, oder nur der eine, der in der session_page den Wert "-99" stehen haben (entspricht der timeout.php).

Wenn die Angelegenheit mit dem IP auslesen zu kompliziert ist, dann können auch alle Einträge, die den Wert "-99" bei session_page haben (entspricht der timeout.php) gelöscht werden... dann würden alle Gäste ja eine neue SessionID bekommen.

Ich habe jetzt manuell, meine IP ins Hex-Format umgewandelt und den Eintrag in der Datenbank gesucht... diesen einfach gelöscht und mein Timer ist wieder neu gestartet.

Ich hoffe das ist nicht zu kompliziert zu lösen und bitte um Hilfe den Experten hier.

Wenn noch Fragen sind, einfach raus damit!

Gruss Bernd

Verfasst: 14.09.2004 21:58
von andreas888
Hallo,

schon mal einfach eine Zufallsfunktion angedacht ?

also das könnte einfach mit der rand() funktion gelöst werden so daß zB durchschnittlich jeder x. Aufruf auf deine Seite leitet

ist mit random einfach zu lösen,
Nachteil es kann theoretisch vorkommen, daß der user 2xhintereinander dort landet..

Verfasst: 14.09.2004 22:01
von Berndte
auch eine nette Idee... also mach dich ran ;););) ... sorry, aber ich weiss leider nicht wie ich das lösen soll, vielleicht ja du ;) Wäre irre nett.

Gruss Bernd