 |
Publicité
|
Cette DLL permet la création rapide d'application CGI en Visual Basic 4 (32),5.
Installation :
mettre la DLL dans le répertoire system de windows et allez dans le menu démarrer, Exécuter...,Regsvr32.exe vbcgi.dll, ou bien dans Visual Basic le menu projet, références..., parcourir et choisir vbcgi
Pour créer un CGI en VB, il suffit de créer un executable avec un simple module BAS.
Ex pour VB 5 :
Nouveau projet,
EXE standard
supprimer form1
ajouter un nouveau module
dans les propriétés du projet :
Objet de démarrage : sub Main
dans le nouveau module, ajouter :
Option Explicit
Sub Main()
End Sub
Nous pouvons maintenant créer notre premier CGI.
Sub Main()
Dim CGI As Object, B As Boolean
Set CGI = CreateObject("vbcgi.CGI") ' création de l'objet CGI
B = CGI.Init() ' initialise la DLL - Obligatoire pour la récupération des variables...
B = CGI.Header("text/html") ' Header du cgi
B = CGI.Send("<HTML>") ' sortie standard (HTML)
B = CGI.Send("<HEAD>")
B = CGI.Send("<TITLE>")
B = CGI.Send("Mon premier CGI")
B = CGI.Send("</TITLE>")
B = CGI.Send("</HEAD>")
B = CGI.Send("<BODY>")
B = CGI.Send("Bonjour le monde !<BR>")
B = CGI.Send("</BODY>")
B = CGI.Send("</HTML>")
Set CGI = Nothing ' destruction de l'objet CGI
End Sub
Propriétés de la DLL :
Nom : NoCache
type de données : boolean
valeur par défaut : false
description : permet de définir si le CGI sera mis ou non en cache par le navigateur, par défaut sera dans le cache
Fonctions de la DLL :
Boolean = CGI.Init()
initialise la DLL - Obligatoire pour la récupération des variables... et l'utilisation des fonctions suivantes :
String=CGI.Env(valin as String)
cette fonction permet d'obtenir les valeurs des variables d'environnement standards comme : HTTP_REFERER, REMOTE_ADDR...
utilisation : S=CGI.Env("HTTP_REFERER") pour connaître la page d'origine de l'appel au CGI
String=CGI.GetCookies(name as String)
Cette fonction permet de connaître la valeur d'un cookie.
Utilisation : Cookies=CGI.GetCookies("Nom")
String=CGI.GetValue(name as String)
Cette fonction permet de connaître la valeur d'une variable passée en paramètre au CGI par la méthode POST ou GET.
Utilisation : Nom=CGI.GetValue("Nom")
Boolean = CGI.Header(content as string)
Header du CGI, cette fonction n'est pas obligatoire.
En effet elle peut être remplacée par l'utilisation de la fonction Send. Mais en standard, elle permet de définir si le CGI sera en cache (propriété) la date d'expiration du CGI (fonction SetExpires), l'envoi des cookies et du content-type.
Header minimun pour un CGI :
B=CGI.Send("Status: 200 OK")
B=CGI.Send("Content-type: " & Content & vbcrlf)
ou content est par ex text/html ou bien image/gif ...
Boolean = CGI.Redirect(URL as string)
permet de rediriger le client vers une autre URL.
Ex pour créer un redirecteur :
Sub Main()
Dim CGI As Object, B As Boolean, URL as string
Set CGI = CreateObject("vbcgi.CGI") ' création de l'objet CGI
B = CGI.Init() ' initialise la DLL - Obligatoire pour la récupération des variables...
URL=CGI.GetValue("URL")
B = CGI.Redirect(URL)
Set CGI = Nothing ' destruction de l'objet CGI
End Sub
Boolean = CGI.Send(Texte as string)
Boolean = CGI.SendBinary(Bin as string)
sortie binaire (images gif, jpg)
Boolean = CGI.SetExpires(nbDay as integer, GMTTime as integer, Midnight as boolean)
permet de définir la date d'expiration du CGI
Boolean = CGI.SetExpiresCookies(nbDay as integer, GMTTime as integer, Midnight as boolean)
permet de définir la date d'expiration des Cookies
nbDay : en nombre de jours depuis aujourd'hui
GMTTime : le nombre d'heure de décalage par rapport à GMT (+ ou -)
Midnight : pour fixer la date d'expiration à minuit GMT
Ex : pour des cookies valable 30 j minuit GMT : B = CGI.SetExpiresCookies(30,0,true)
Ex : pour un cgi valable 2 j avec un décalage d'une heure en moins par rapport à GMT : B = CGI.SetExpires(2,-1,false)
String=CGI.UrlEncode(valin as String)
permet d'encoder des valeurs au format standard pour le passage de paramètres à un autre CGI
Ex :
Sub Main()
Dim CGI As Object, B As Boolean, URL as string, valeur as string
Set CGI = CreateObject("vbcgi.CGI") ' création de l'objet CGI
B = CGI.Init() ' initialise la DLL - Obligatoire pour la récupération des variables...
Valeur= CGI.UrlEncode("Test encodage") ' encodé en Test+encodage
URL = "http://www.monserveur.com/cgi-bin/ moncgi.pl?Test=" & Valeur
B = CGI.Redirect(URL)
Set CGI = Nothing ' destruction de l'objet CGI
End Sub
Téléchargement de la DLL
|