Wechselbanner ohne Datenbank?
Hi,
ich überlege gerade, ob es eine Möglichkeit gibt via php und html eine Art Wechselbanner bei refresh der Seite zu basteln.
Ziel:
Es gibt irgendwo auf der Seite eine Variabel die bei refresh der Seite ein neues template anzeigt. Diese templates sind im Grunde nichts weiter als Buttons im a-tag mit href und img src. Also im Grunde genommen so wie die Affiliatebox von kit-help.deeben nur ohne Datenbankanbindung, sondern mit einem template-Ordner aus dem die verschiedenen templates nach Möglichkeit auch mit random-Funktion auf gerufen werden können.
Geht das?
ich überlege gerade, ob es eine Möglichkeit gibt via php und html eine Art Wechselbanner bei refresh der Seite zu basteln.
Ziel:
Es gibt irgendwo auf der Seite eine Variabel die bei refresh der Seite ein neues template anzeigt. Diese templates sind im Grunde nichts weiter als Buttons im a-tag mit href und img src. Also im Grunde genommen so wie die Affiliatebox von kit-help.deeben nur ohne Datenbankanbindung, sondern mit einem template-Ordner aus dem die verschiedenen templates nach Möglichkeit auch mit random-Funktion auf gerufen werden können.
Geht das?
Klar geht das
Und ich nehm an du möchtest du nun auch noch wissen wie
Spontan könnt ich mir folgendes vorstellen...
Den Ordner, in dem die Zieltemplates liegen sollen, auslesen und die gefunden Templates in einem Array speichern.
Danach bräuchte man nur noch eine Zufallszahl zwischen 0 und Anzahl der Elemente im Array erzeugen und könnte dann mit dieser ermittelten Zahl das Element aus dem Array abrufen und anzeigen lassen.
Hoff die grobe Beschreibung reicht für den Anfang....kann momentan nicht mit Beispielcode etc dienen, da ich noch auf Arbeit rumsitzen muss
Grtz
Und ich nehm an du möchtest du nun auch noch wissen wie
Spontan könnt ich mir folgendes vorstellen...
Den Ordner, in dem die Zieltemplates liegen sollen, auslesen und die gefunden Templates in einem Array speichern.
Danach bräuchte man nur noch eine Zufallszahl zwischen 0 und Anzahl der Elemente im Array erzeugen und könnte dann mit dieser ermittelten Zahl das Element aus dem Array abrufen und anzeigen lassen.
Hoff die grobe Beschreibung reicht für den Anfang....kann momentan nicht mit Beispielcode etc dienen, da ich noch auf Arbeit rumsitzen muss
Grtz
[Bevor du jemanden mit Füßen trittst, überleg ob du einem eventuellen Echo gewachsen bist]
Hi,
na supi, dass Du da zuversichtlich bist! Und dann bleibt mir nur noch Dir einen baldigen Feierabend zu wünschen. Ach und: JavaScript ist unsportlich! Aber davon schriebst Du ja auch nüscht!
Meinst Du, Du bekämst das in einer ruhigen Minute zusammen geschribbelt? Ich krieg das vielleicht mit dem array noch hin, aber die Zufallszahl entstehen zu lassen, ich glaub da verließen sie eher mich.
Aber die Idee finde ich echt prima! Also ich meine, so wie Du es da so als Marschrichtung erdacht hast.
na supi, dass Du da zuversichtlich bist! Und dann bleibt mir nur noch Dir einen baldigen Feierabend zu wünschen. Ach und: JavaScript ist unsportlich! Aber davon schriebst Du ja auch nüscht!
Meinst Du, Du bekämst das in einer ruhigen Minute zusammen geschribbelt? Ich krieg das vielleicht mit dem array noch hin, aber die Zufallszahl entstehen zu lassen, ich glaub da verließen sie eher mich.
Aber die Idee finde ich echt prima! Also ich meine, so wie Du es da so als Marschrichtung erdacht hast.
Nun hab ich endlich Feierabend und muss dann immer noch arbeiten
Aber versuch es mal folgendermaßen...
Den Quellcode einfach als randomBanner.php (oder was auch immer) speichern, ins root-Verzeichniss vom Kit packen, in der include.php mittels
vor dem Aufruf des site - Templates einbinden und dann einfach die Variable $rnd_banner an der gewünschten Stelle platzieren und hoffen das ich keinen Fehler in den Quelltext gebaut habe...weswegen die Verwendung auch auf eigene Gefahr hin geschieht
Grtz
Aber versuch es mal folgendermaßen...
|
|
PHP-Quelltext |
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 |
<?php
#Konfiguration
$bPath = "banner/"; #Pfad zum Bannerverzeichniss ausgehend vom Templatesverzeichniss mit / am Ende
$bExtension = "htm"; #Endung der Templatedateien
#Ende Konfiguration#
if (is_dir("templates/".$bPath)) #Prüfen ob Pfadangabe existiert (Vertrauen ist gut, Kontrolle ist besser *g* )
{
if ($bHandleDir = opendir("templates/".$bPath)) #Versuch das Verzeichniss zu öffnen
{
$bAvailableTemplates = array(); #Array für die gefundenen Templates
while ($bBanner = readdir($bHandleDir)) #Verzeichniss in einer while-Schleife auslesen
{
$bInfo = pathinfo($bBanner);
if($bInfo['extension'] == $bExtension) #Prüfen, ob die Endung einer gefundenen Datei der in $bExtension angegebenen entspricht
{
array_push($bAvailableTemplates, str_ireplace(".".$bExtension,"",$bBanner)); #Template von Endung befreien und dem Array hinzufügen
}
}
}
closedir($bHandleDir); #Verzeichnis-handle schließen
if (count($bAvailableTemplates) > 0) #Prüfen, ob min. 1 Template gefunden wurde
{
#Zufallszahl ermitteln (0 bis Anzahl im Array bAvailableTemplates -1)
$bElementNr = rand(0, count($bAvailableTemplates) - 1);
#Template mittels gettemplate() aufrufen und in Variable $rnd_banner speichern
eval("\$rnd_banner = \"".getTemplate($bPath.$bAvailableTemplates[$bElementNr])."\";");
}
}
?>
|
Den Quellcode einfach als randomBanner.php (oder was auch immer) speichern, ins root-Verzeichniss vom Kit packen, in der include.php mittels
|
|
PHP-Quelltext |
1 |
include("randomBanner.php");
|
vor dem Aufruf des site - Templates einbinden und dann einfach die Variable $rnd_banner an der gewünschten Stelle platzieren und hoffen das ich keinen Fehler in den Quelltext gebaut habe...weswegen die Verwendung auch auf eigene Gefahr hin geschieht
Grtz
[Bevor du jemanden mit Füßen trittst, überleg ob du einem eventuellen Echo gewachsen bist]
Das hättest du auch prinzipiell drin lassen können, also ist kein Fehler falls du das dachtestIch hab nur das i aus str_ireplace in Zeile 18 gelöscht und fädich!
Bedeutet einfach das beim Suchen einer Zeichenkette in einem String nicht auf die Groß- und Kleinschreibung geachtet wird (i wie incasesensitive), falls mal jemand ein template names wasauchimmer.HTM statt wasauchimmer.htm in den Ordner packt
Aber freut mich das es funktioniert und gefällt
Grtz
[Bevor du jemanden mit Füßen trittst, überleg ob du einem eventuellen Echo gewachsen bist]
Ähnliche Themen
-
alte Versionen [1.6.03|1.6.1|1.6.4] »-
Häufige Datenbankprobleme
(19. Januar 2008, 15:22)
-
alte Versionen [1.6.03|1.6.1|1.6.4] »-
Datenbankcheck + Optimierung und Reperatur mit Cronjob regeln
(22. Januar 2008, 15:34)
-
alte Versionen [1.6.03|1.6.1|1.6.4] »-
db backup auf 1.6.3?
(27. Januar 2008, 18:04)
-
alte Versionen [1.6.03|1.6.1|1.6.4] »-
Online Box geht nicht mehr
(18. Januar 2008, 11:45)
-
alte Versionen [1.6.03|1.6.1|1.6.4] »-
Mysql datenbank frage
(11. Januar 2008, 14:49)



