Execution de codes asp à la volée

Contenu du snippet

Voila un petit exemple qui vous permettra d'utiliser du code ASP à la volée.
Tout est commenté et relativement simple.

L'utilité ? Ce à qui sa interresse y trouverons une utilité. Les autres c'est toujours bon à savoir.

Have Fun

Source / Exemple :


------------------------------------------------------------------------------------------------------------------------------------------------

Fichier index.asp

------------------------------------------------------------------------------------------------------------------------------------------------

<%
Option Explicit

Dim obj_fso, obj_otf, str_realpath, str_filename, str_functions

'*----------------------------------------------------------------------*'
'* Function d'ajout du slash à la fin d'un chemin d'accès				*'
'* nom :		str_slashdir											*'
'* entrées :															*'
'*				- str_path	:		: chemin d'accès					*'
'* sortie :																*'
'*				- str_path	:		: chemin d'accès					*'
'*----------------------------------------------------------------------*'
function str_slashdir( str_path )
	Dim arr_path
	Dim str_slash
	str_slash = "/"
	arr_path = Split(str_path, str_slash)
	if UBound(arr_path) = 0 then
		str_slash = "\"
		arr_path = Split(str_path, str_slash)
	end if
	if arr_path(UBound(arr_path)) = "" then
		str_slashdir = str_path
	else
		str_slashdir = str_path & str_slash
	end if
end function

'*----------------------------------------------------------------------*'
'* Chargement des fonctions												*'
'*----------------------------------------------------------------------*'
str_filename = "mes_fonctions.txt"
str_realpath = str_slashdir(Server.MapPath("./"))
response.write "<b>Chargement du fichier " & str_filename & " : </b>"
response.write "<br>" & str_realpath & str_filename & "<br>"
Set obj_fso = CreateObject("Scripting.FileSystemObject")
Set obj_otf = obj_fso.OpenTextFile(str_realpath & str_filename, 1, False, 0)
str_functions = obj_otf.ReadAll
obj_otf.Close
Set obj_otf = Nothing
Set obj_fso = Nothing

response.write "<br>------------------------------------------------------------------------<br>"
response.write replace(replace(Server.HTMLEncode(str_functions), vbCrLf, "<br>"), vbTab, "&nbsp;")
response.write "<br>------------------------------------------------------------------------<br>"
response.write "<br>"

'*----------------------------------------------------------------------*'
'* Interprétation des fonctions											*'
'*----------------------------------------------------------------------*'
Execute(str_functions)

response.write "<b>Execution des fonctions : </b>"
response.write "<br>"
response.write ma_variable & "<br>"
response.write ma_fonction & "<br>"
Dim obj_instance
Set obj_instance = new ma_classe
response.write obj_instance.ma_methode & "<br>"
obj_instance.mon_attribut = "L'attribut de ma classe est initialisé !<br>"
response.write obj_instance.mon_attribut & "<br>"
response.write "<br>"
response.write "<b>Chargement de la page index.asp : </b>"
response.write "<br>" & replace(replace(Server.HTMLEncode(str_functions), vbCrLf, "<br>"), vbTab, "&nbsp;") & "<br>"
response.write "<br>"
%>

------------------------------------------------------------------------------------------------------------------------------------------------

Fichier mes_fonctions.txt

------------------------------------------------------------------------------------------------------------------------------------------------

ma_variable = "Ma variable est lue !"

Function ma_fonction
	ma_fonction = "Ma fonction est executée !"
End Function

Class ma_classe
	dim mon_attribut
	Function ma_methode
		ma_methode = "La méthode de ma classe est executée !"
	End Function
End Class

str_filename = "index.asp"
str_realpath = str_slashdir(Server.MapPath("./"))
response.write "<b>Chargement du fichier " & str_filename & " : </b>"
response.write "<br>" & str_realpath & str_filename & "<br>"
response.write "<br>"
Set obj_fso = CreateObject("Scripting.FileSystemObject")
Set obj_otf = obj_fso.OpenTextFile(str_realpath & str_filename, 1, False, 0)
str_functions = obj_otf.ReadAll
obj_otf.Close
Set obj_otf = Nothing
Set obj_fso = Nothing

Conclusion :


Désolé j'ai fait ca vite fait et je n'ai pas de winzip sous la main (que du rar).
Dès que possible, je zip l'exemple.

il y a deux fichier index.asp et mes_fonctions.txt

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.