- · Niveau : DÉBUTANT
- · Compatibilité : Serveur IIS
La composante MSWC.AdRotator s’installe automatiquement avec un serveur web IIS. Elle est donc très répandue. Bien qu’elle n’ait pas beaucoup de fonctionnalités, en fait c’est d’une grande simplicité, son usage peu quand même être très élaboré lors de la redirection. On ne peut pas comptabiliser le nombre d’affichage ou toutes autres statistiques d’affichage. Une image aléatoire avec quelques propriétés en tout. Par contre, une grande liberté lors de la redirection. Vous pouvez en effet spécifier un lien direct mais aussi une page de redirection. Page qui peut comptabiliser le nombre de clics par exemple.
L’objet créé par AdRotator ne fait que générer le code HTML d’une image. À chaque rafraîchissement de la page, une nouvelle image est générée. Les paramètres des bannières sont gardés dans un fichier texte facile à mettre à jour. L’avantage de cette technique contre un système complet géré par base de données est la rapidité d’exécution et le peu de ressources serveur utilisées. Mais l’avantage s’arrête là. Enfin, Puisque la sortie est en HTML, vous avez la possibilité, via Javascript, d’utiliser ce code sur un serveur distant. C’est à dire de vous fabriquer un système de bannières rotatives à installer sur des sites externes participants.
Voyons la création, les propriétés et la seule utilisation de notre objet AdRotator:
<%
’ Création de l’objet oBan
set oBan=Server.createobject("MSWC.AdRotator")
’ Propriétés
’ bordure des bannières
oBan.Border="2"
’ Avec ou sans lien sur l’image
oBan.Clickable=false
’ La cible - _blank = nouvelle page...
oBan.TargetFrame="target=’_blank’"
’ Méthode - Affichage d’une bannière provenant du fichier bannieres.txt
response.write(oBan.GetAdvertisement("bannieres.txt"))
’ Fermeture de l’objet
set oBan = nothing
%>
Simple, n’est-ce pas? Ce code affichera une bannière aléatoire provenant du fichier "bannieres.txt".
Redirection
L’erreur la plus fréquente est de penser que l’adresse de redirection d’une image spécifiée dans le fichier "bannieres.txt" (voir plus bas) permet de rediriger automatiquement le visiteur. Ce qui n’est pas le cas. En fait, le Url est simplement envoyé via la requête HTTP (méthode GET). Il y a alors deux possibilités.
- Si un fichier de redirection est spécifié dans le fichier "bannieres.txt" (voir plus bas), le Url est envoyé à ce fichier de redirection.
- Si aucun fichier de redirection n’est spécifié dans le fichier "bannieres.txt", le Url est envoyé à la page courante qui sera rafraîchie.
Dans les deux cas, le même code est requis pour faire la redirection:
<%
url=Request.QueryString("url")
If url<>"" then Response.Redirect(url)
%>
ATTENTION, si la page qui récupère le Url est une page qui affiche un contenu, vous pouvez avoir l’erreur de l’objet Response; "l’en-tête a déjà été envoyé au client! ". Pour contrer ce problème, simplement ajouter tout en haut du document ASP le code suivant:
<%response.buffer=true%>
Code complet sans fichier de redirection:
<%response.buffer=true%>
<%
’ Fichier pub.asp
Dim url, oBan
url=Request.QueryString("url")
If url<>"" then Response.Redirect(url)
set oBan=Server.createobject("MSWC.AdRotator")
oBan.TargetFrame="target=’_blank’"
response.write(oBan.GetAdvertisement("bannieres.txt"))
set oBan = nothing
%>
Code complet avec fichier de redirection:
<%
’ Fichier pub.asp
Dim oBan
set oBan=Server.createobject("MSWC.AdRotator")
oBan.TargetFrame="target=’_blank’"
response.write(oBan.GetAdvertisement("bannieres.txt"))
set oBan = nothing
%>
<%response.buffer=true%>
<%
’ Fichier redirect.asp
Dim url
’ Vous pouvez ajouter ici un code pour
’ mettre à jour les statistiques dans
’ une base de données par exemple...
url=Request.QueryString("url")
If url<>"" then Response.Redirect(url)
%>
Les bannières
Voyons maintenant le fichier texte "bannieres.txt". Ce fichier permet de déclarer un nombre x de bannières. Vous pouvez spécifier pour chacune des bannières le url de la bannière, le url de redirection envoyé, un texte alternatif et un ration d’affichage. De plus, ce fichier permet d’identifier un fichier ASP de redirection et la hauteur/largeur des bannières. Malheureusement toutes vos bannières devront avoir les mêmes dimensions.
Le fichier est construit en deux sections, la première contenant les propriétés globales et la deuxième, la liste des bannières. L’astérisque est le séparateur.
Propriétés globales
*
Bannière 1
Bannière 2
...
Vous n’avez pas besoin de spécifier de propriété globale, si vous désirer. Mais sachez qu’en ne spécifiant pas la largeur et la hauteur, vos bannières risquent d’être déformées! Je n’ai aucune idée pourquoi mais en ne précisant pas les dimensions, les bannières 468x60 s’affichent plutôt en 440x60! Le fichier de redirection est utilisé seulement si la redirection se fait via une autre page ASP. Les propriétés globales dans l’ordre sont:
REDIRECT fichierRedirection.asp
WIDTH 468 ’ Largeur
HEIGHT 60 ’ hauteur
BORDER 0 ’ bordure
Les propriétés des bannières:
Url de l’image
Url de redirection (direct)
Texte altérnatif
Ratio d’affichage
Par exemple:
image1.gif
http://www.trucsweb.com/
Les Trucsweb
80
image2.gif
http://www.google.com/
Recherche Google
10
http://www.serveur.com/image3.gif
http://www.serveur.com/
Autre bannière
10
Rien de bien compliqué, le ratio indique que la bannière des Trucsweb sera affichée 80 fois pendant que celle de Google le sera seulement 10 fois, un ration quoi! Attention de bien respecter l’ordre sans aucune ligne vide.
Noter que l’astérisque " * " doit toujours être présent, entre les propriétés globales et la déclaration des bannières ou encore tout en haut du fichier même si aucune propriété globale n’est spécifiée.
Code complet du fichier "bannieres.txt" avec fichier de redirection:
REDIRECT redirect.asp
WIDTH 468
HEIGHT 60
BORDER 0
*
image1.gif
http://www.trucsweb.com/
Les Trucsweb
80
image2.gif
http://www.google.com/
Recherche Google
10
http://www.serveur.com/image3.gif
http://www.serveur.com/
Autre bannière
10
Code complet du fichier "bannieres.txt" sans fichier de redirection:
WIDTH 468
HEIGHT 60
BORDER 0
*
image1.gif
http://www.trucsweb.com/
Les Trucsweb
80
image2.gif
http://www.google.com/
Recherche Google
10
http://www.serveur.com/image3.gif
http://www.serveur.com/
Autre bannière
10