Avatar billede michaelb.dk Nybegynder
19. januar 2006 - 15:39 Der er 13 kommentarer og
1 løsning

PHP Bannerskift med javascript

Jeg har dette javascript, som skifter mellem de to bannere. Men jeg kan jo ikke inkludere et javascript i koden, og vil derfor gerne finde den samme funktion i php, hvor man kan inkludere javascript. Findes der en færdig kodestump?

-----

<script language="JavaScript">
<!--
function random_imglink(){

var myimages=new Array()
myimages[1]="<img src='billed1.gif'> og et javascript"
myimages[2]="<img src='billed2.gif'> og et javascript"

var ry=Math.floor(Math.random()*myimages.length)
if (ry==0)
ry=1
document.write('Annonce: '+myimages[ry]+'')
}
random_imglink()
//-->
</script>
Avatar billede johan.o Nybegynder
19. januar 2006 - 15:59 #1
Jeg er ikke helt hundrede på at det er det du leder efter, men hvis det 'blot' drejer sig om at du vil have PHP serveren til at vælge hvilket billede der skal vises :

$p=array("billed1.gif", "billed2.gif");
$r=rand(1, count($p));
$rp=$p[$r];

men noget siger mig det er noget andet du leder efter.....jeg forstår så bare ikke spørgsmålet.

Mvh. Johan
Avatar billede michaelb.dk Nybegynder
19. januar 2006 - 16:02 #2
Nåh ok, nej jeg kan godt se at det ikke er helt specifikt :-)
Jeg ønsker et script som viser et random billede, som skifter ved opdatering.
Avatar billede michaelb.dk Nybegynder
19. januar 2006 - 16:04 #3
...men det skal ikke kun være et billede - også et skiftende javascript. forstår du?
Avatar billede johan.o Nybegynder
19. januar 2006 - 16:18 #4
Hvis hvert billede har et tilhørende stykke script kunne du gøre således :

$p=array("billed1.gif", "billed2.gif");
$j=array("scr1.js", "scr2.js");
$r=rand(1, count($p));
$rp=$p[$r];
$rj=$j[$r];

Så 'gemmer' du hvert stykke javascript i hver sin .js fil og kalder dem således :

$output="<html><head><script type='text/javascript src='".$rj."'></script></head>";

echo $output;

Hjælper det ?

Mvh. Johan
Avatar billede johan.o Nybegynder
19. januar 2006 - 16:19 #5
Hov mangler lige en '

$output="<html><head><script type='text/javascript' src='".$rj."'></script></head>";

Sådan :)
Avatar billede michaelb.dk Nybegynder
19. januar 2006 - 16:19 #6
Uha, er der virkelig ikke en lettere måde at gøre det på?
Avatar billede johan.o Nybegynder
19. januar 2006 - 16:24 #7
Jo det er der sikkert, men så skal du nok vise hvordan det tilhørende javascript ser ud og hvordan det skal bruges og kaldes :)

Mvh. Johan
Avatar billede michaelb.dk Nybegynder
19. januar 2006 - 16:44 #8
det er et google adsense script, som du kan se her http://fugleforum.dk/adsense.htm :) Indtil videre løser jeg problemer med iframes..
Avatar billede johan.o Nybegynder
19. januar 2006 - 16:53 #9
Det kender jeg ikke noget til, så hvis jeg skal hjælpe dig yderligere må du vise noget kode og beskrive hvordan du vil have det til at virke :)

Mvh. Johan
Avatar billede michaelb.dk Nybegynder
19. januar 2006 - 17:00 #10
koden kan du jo se i Vis Kilde, og det eneste jeg vil have, er et script der skiftevis viser adsense banneret og nogle andre bannere? Se www.fugleforum.dk i toppen.
Avatar billede johan.o Nybegynder
19. januar 2006 - 19:17 #11
He he, ja det blev det jo ikke ligefrem simplere af :)

Nu forstår jeg bedre dit start spørgsmål. Det som 'http://pagead2.googlesyndication.com/pagead/show_ads.js' returnere er jo ikke til at ændre i så istedet har jeg tilpasset dine andre bannere til at levere noget der ligner. Først skal du gemme følgende i en fil du kalder 'ban1.js' :

document.write("<a href=\"http://www.fugleforum.dk/count/click.php?id=1\" target=\"_blank\"><img src=\"http://www.fugleforum.dk/img/bannerplads/tinggaarden.png\" style=\"position: absolute; left: 0px; top: 0px; border: 0px;\" width=\"300\" height=\"60\"></a>");

Så skal dette gemmes i en fil du kalder : 'ban2.js'

document.write("<a href=\"http://www.fugleforum.dk/count/click.php?id=15\" target=\"_blank\"><img src=\"http://www.fugleforum.dk/img/bannerplads/tukanpet.gif\" style=\"position: absolute; left: 0px; top: 0px; border: 0px;\" width=\"300\" height=\"60\"></a>");

Og så gem dette i f.eks. 'ban.php'

<?php

$j=array("http://pagead2.googlesyndication.com/pagead/show_ads.js", "ban1.js", "ban2.js");
$r=rand(0, count($j)-1);

$output="<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01//EN' 'http://www.w3.org/TR/REC-html40/strict.dtd'>
<html>
<head>
<script type='text/javascript' src='adsense.js'></script>
</head>
<body>
<table style='width: 400px; margin: 0px auto;'><tr>
<td><div style='position: relative; width: 300px; height: 60px; border: 1px solid #000000; text-align: center; background-color: #CCFF99;'>
<script type='text/javascript' src='".$j[$r]."'></script>
</div></td>
</tr>
</table>

</body>
</html>";

echo $output;
?>

ban.php skulle så gerne leverer det du efterlyser.....men som sagt så er det ikke ligefrem simpelt :), men jeg tror ikke det er muligt at lave meget simplerer da du, som du selv nævner, ikke kan afvikle javascript på din php server.

Mvh. Johan
Avatar billede michaelb.dk Nybegynder
02. februar 2006 - 15:48 #12
Hej Johan, tak for svaret, jeg tror jeg holder mig til en iframe.
Men du skal ikke snydes for points.
Avatar billede johan.o Nybegynder
03. februar 2006 - 21:48 #13
Jamen så ligger jeg da et svar :)

Mvh. Johan
Avatar billede johan.o Nybegynder
03. februar 2006 - 21:48 #14
DOUUHH :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester