Pagina 1 van 1

[MOD] Random banner is header

Geplaatst: 16 nov 2004, 11:08
door toetertje
Ik weet niet of er behoefte aan is of dat er al iets is wat er op lijkt (zal vast wel :) ) maar ik heb een kleine mod gemaakt waarmee je een wisselende Banner boven je forum kunt zetten (zoiets al dit dus: http://www.phpbb.nl/viewtopic.php?t=13232)

Alleen heb ik het in PHP gedaan. Het is niet echt hoogstaand maar misschien hebben jullie er iets aan.

Ik ben nog niet echt thuis is alle phpBB termen qua mods, maar hiermee moet het lukken denk ik:

Code: Selecteer alles

Open: includes/page_header.php
Zoek:

Code: Selecteer alles

//
// Parse and show the overall header.
//
$template->set_filenames(array(
	'overall_header' => ( empty($gen_simple_header) ) ? 'overall_header.tpl' : 'simple_header.tpl')
);
After add:

Code: Selecteer alles

$bannernumber = 4;
$uitkomst = rand (1, $bannernumber);

if ($uitkomst=="1")
$banner= "<img src=\"http://urlnaarjesite.nl/mapmetplaates/logo1.jpg\" alt=\"Bannert!\" />"; 

if ($uitkomst=="2")
$banner= "<img src=\"http://urlnaarjesite.nl/mapmetplaates/logo2.jpg\" alt=\"Bannert!\" />"; 

if ($uitkomst=="3")
$banner= "<img src=\"http://urlnaarjesite.nl/mapmetplaates/logo3.jpg\" alt=\"Bannert!\" />"; 

if ($uitkomst=="4")
$banner= "<img src=\"http://urlnaarjesite.nl/mapmetplaates/logo4.jpg\" alt=\"Bannert!\" />";
Zoek:

Code: Selecteer alles

	'NAV_LINKS' => $nav_links_html)
);

//
// Login box?
//
Ervoor plaatsen:

Code: Selecteer alles

	'BANNER' => $banner,
Open /templates/templatesnaam/overall_header.php

Op de plek waar je je banner hebt staan haal je de huidige code weg voor de banner en vervangt dat door:

Code: Selecteer alles

{BANNER}
Klaar. Alles saven en uploaden en je bent er. Vergeet niet je verschillende banners er ook neer te zetten anders heeft deze mod geen nut.

Misschien kan iemand mij ook meteen helpen. Wat is graag zou zien is dat ik alles banners in een map zou stoppen en dat dit aantal direct uitgelezen wordt.
Ik heb op phpfreakz.nl een voorbeeldje gevonden:

Code: Selecteer alles

$ext = explode(' ',$hide);
if(isset($_GET['file'])){
    if(!strstr($_GET['file'], '..')){
        $_file = explode('./',$_GET['file']);
        $count = count($_file); 
Maar ik ben niet zo thuis in bestanden uitlezen in php. Is hier iemand goed in? Ik hoef alleen maar weten hoeveel er in een map staan zodat ik daarmee $bannernumber kan vullen en de logootjes kan nummeren. Iemand een mooi idee hiervoor?

Geplaatst: 16 nov 2004, 13:03
door !¿!Mats!¿!
er bestaat al zoiets waarom wil je een andere?

op mijn forum staat ook zoiets

Geplaatst: 16 nov 2004, 13:07
door toetertje
Hmm, had ik niet eens gezien, topic hierboven vond ik bij het aanmaken van dit topic.
Dit maken was minder tijd dan het zoeken naar zoiets dus heb ik dat maar gedaan.

Geplaatst: 16 nov 2004, 22:09
door mosymuis
Toetertje, je mod is een leuk (alhoewel niet bijster origneel) idee, maar de uitwerking is minder.

Neem bijvoorbeeld dit stuk:

Code: Selecteer alles

$bannernumber = 4;
$uitkomst = rand (1, $bannernumber);

if ($uitkomst=="1")
$banner= "<img src=\"http://urlnaarjesite.nl/mapmetplaates/logo1.jpg\" alt=\"Bannert!\" />";

if ($uitkomst=="2")
$banner= "<img src=\"http://urlnaarjesite.nl/mapmetplaates/logo2.jpg\" alt=\"Bannert!\" />";

if ($uitkomst=="3")
$banner= "<img src=\"http://urlnaarjesite.nl/mapmetplaates/logo3.jpg\" alt=\"Bannert!\" />";

if ($uitkomst=="4")
$banner= "<img src=\"http://urlnaarjesite.nl/mapmetplaates/logo4.jpg\" alt=\"Bannert!\" />";
wat je, met exact dezelfde uitwerking, ook zo kunt schrijven:

Code: Selecteer alles

$banners = 4;
$banner= '<img src="./mapmetplaates/logo'.rand(1, $banners).'.jpg" alt="Bannert!" title="" />';
Als je perse wilt dat men zelf te kiezen namen kan opgeven kan het ook zo:

Code: Selecteer alles

$banners = array(
  '1e_plaatje.jpg',
  'header.gif',
  'img_banner3.jpg',
  'logo4.jpg'
);
$banner= '<img src="./mapmetplaates/logo'.$banners[rand(0, count($banners))].'" alt="Bannert!" title="" />';
Het stukje code van phpfreakz.nl wat je aanhaalde,

Code: Selecteer alles

$ext = explode(' ',$hide);
if(isset($_GET['file'])){
    if(!strstr($_GET['file'], '..')){
        $_file = explode('./',$_GET['file']);
        $count = count($_file);
zegt me weinig omdat het gegrepen lijkt te zijn uit het midden van een willekeurig script. Als je de plaatjes uit een dir wilt laten lezen gebruik je opendir(), readdir() en closedir(). De werking van de functies lees je op php.net. Voor een verduidelijkend script kijk je hier, op de site van één van onze moderators.

Geplaatst: 17 nov 2004, 12:15
door toetertje
Kijk eens, dat is mooi.

Ik was inderdaad van plan om die namen variabel te gaan maken en die met een iets uitgebreidere directory browser die ik al gebruikt te gaan 'beheren'.

Uitwerking is inderdaad niet zo netjes. Misschien verbeter ik die nog wel als ik daar nog tijd voor kan vinden (donkere dagen enzo) Iig bedankt voor de tips :)

Geplaatst: 04 dec 2004, 21:54
door dieter
Ik geraak er niet zo wijs aan uit met de korte versie.
Wat is ijgenlijk de mod voledig, maar dan met verbeterde versie?

Geplaatst: 06 dec 2004, 14:27
door toetertje
Probeer hier maar eesn te kijken:
http://www.phpbbhacks.com/searchresults ... &Submit=Go

Een aantal varianten van Random headers en zelfs quotes (al wil je dat misschien niet. Het zal in ieder geval wat duidelijker zijn dan hetgeen ik hier neergekwakt heb :)