par Michael DELIQUE » 06 Oct 2007 à 20:37
- Code : Tout sélectionner
Function Escape(chaine As String) As String
' Equivalent de la fonction escape en Javascript.
' Code une chaîne pour permettre de la passer dans une URL.
' converti les caratere spéciaux en code hexadecimale
'Déclaration des variables
Dim caractere As String
Dim i As Integer
On Error Goto ErreurHandle
Escape = ""
For i = 1 To Len(chaine)
caractere = Mid(chaine, i , 1)
'détermine si c'est un caratere spécial
If Instr("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+-_", caractere ) > 0 Then
Escape = Escape + caractere
Else
Escape = Escape + "%" + Hex(Asc(caractere))
End If
Next
Exit Function
ErreurHandle:
Msgbox "("+Cstr(Getthreadinfo (1))+" Call by "+Cstr(Getthreadinfo(10))+")"+Chr(10)+"Erreur " + Str(Err) + " : "+Chr(10) + Cstr(Error)+". "+Chr(10)+"Ligne N° "+Cstr(Erl),16," ERREUR !"
Escape = ""
Resume Next
Exit Function
End Function
- Code : Tout sélectionner
Function UnEscape(chaine As String) As String
' Equivalent de la fonction unescape en Javascript.
' Décode une chaîne codée par la fonction escape et renvoie le résultat.
' converti les codes hexadecimaux en caracteres spécial
' Remarque : Ce codage permet de passer des paramètres par une URL.
'
'Déclaration des variables
Dim caractere As String
Dim i As Integer
On Error Goto ErreurHandle
UnEscape = ""
'Parcours de la chaîne
For i = 1 To Len(chaine)
caractere = Mid(chaine, i, 1)
'Teste s'il s'agit d'un caractère spécial
If caractere = "%" Then
UnEscape = UnEscape + Uchr(Cint("&H" + Mid(chaine, i+1,2)))
i = i + 2
Else
UnEscape = UnEscape + caractere
End If
Next
Exit Function
ErreurHandle:
Msgbox "("+Cstr(Getthreadinfo (1))+" Call by "+Cstr(Getthreadinfo(10))+")"+Chr(10)+"Erreur " + Str(Err) + " : "+Chr(10) + Cstr(Error)+". "+Chr(10)+"Ligne N° "+Cstr(Erl),16," ERREUR !"
UnEscape = ""
Resume Next
Exit Function
End Function
Cordialement
Michael (SMS-Phobique)
----------------------------
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi."
Albert EINSTEIN