Le code suivant peut masquer certaines informations numériques intéressantes dans la page Web, ce qui empêche les autres de les copier ou de les collecter directement. Par exemple, le numéro de téléphone peut empêcher les autres de les rechercher. Fonction : utilisez le programme ASP pour générer le numéro de téléphone dans la page au format image.
Copiez le code comme suit :
<%
Appelez Com_CreatValidCode(Request.QueryString(tel))
Sous-public Com_CreatValidCode (pTel)
'--------------Désactiver la mise en cache
Réponse.Expire = 0
Response.AddHeader Pragma, sans cache
Response.AddHeader cache-ctrol, pas de cache
Réponse.ContentType = Image/BMP
Randomiser
Dim i, ii, iii, rndColor, strLen, sql, rs
Const cOdds = 5 '--------La probabilité d'apparition de bruit
Const str=0123456789-
strLen = len(pTel)
rndColor = ChrB(cint(rnd*255)) & ChrB(cint(rnd*255)) & ChrB(cint(rnd*255))
'---------Données de couleur (caractères, arrière-plan)
Faible vColorData(1)
'vColorData(0) = ChrB(0) & ChrB(0) & ChrB(0) '----Bleu 0, Vert 0, Rouge 0 (noir)
'vColorData(1) = ChrB(255) & ChrB(255) & ChrB(255) '----Bleu 250, Vert 236, Rouge 211 (bleu clair)
'vColorData(0) = ChrB(197) & ChrB(106) & ChrB(49) '---- Bleu 0, Vert 0, Rouge 0 (noir)
'vColorData(1) = ChrB(238) & ChrB(210) & ChrB(193) '-----Bleu 250, Vert 236, Rouge 211 (bleu clair)
vColorData(0) = ChrB(0) & ChrB(0) & ChrB(0) '---------Bleu 0, Vert 0, Rouge 0 (noir)
vColorData(1) = ChrB(205) & ChrB(237) & ChrB(245) '------------Bleu 250, Vert 236, Rouge 211 (bleu clair)
'------------------------------ Générer des personnages de manière aléatoire
Randomiser
Faible vCode()
redim vCode (strLen-1)
Pour i = 0 À strLen-1
vCode(i) =instr(1,str,mid(pTel,i+1,1),1)-1
Suivant
'--------------Données de caractère
Dim vNumberData(11)
'Police Verdana
vNumberData(0) = 11111111111000111101110111011101110111011101110111011101110111011110001111111111
vNumberData(1) = 11111111111101111110011111110111111101111111011111110111111101111110001111111111
vNumberData(2) = 11111111111000111101110111011101111110111111011111101111110111111100000111111111
vNumberData(3) = 11111111111000111101110111111101111100111111110111111101110111011110001111111111
vNumberData(4) = 111111111111101111110011111010111110101111011011111000011111101111111001111111111
vNumberData(5) = 11111111110000011101111111011111110000111111110111111101110111011110001111111111
vNumberData(6) = 11111111111000111101101111011111110000111101110111011101110111011110001111111111
vNumberData(7) = 111111111100000111011011111110111111011111110111111101111111011111110111111111111
vNumberData(8) = 11111111111000111101110111011101111000111101110111011101110111011110001111111111
vNumberData(9) = 11111111111000111101110111011101110111011110000111111101111011011110000111111111
vNumberData(10) = 111111111111111111111111111111111111111100000111111111111111111111111111111111
vNumberData (11) = 111111111111111111111111111111111111111111111111111111111111111111111111111
'-----------------En-tête du fichier image de sortie<br>
Response.BinaryWrite ChrB(66) & ChrB(77) &chrb(((strLen*8*10*3+54) mod 256)) & chrb(((strLen*8*10*3+54)/ 256)mod 256 ) & ChrB((((strLen*8*10*3+54)/ 256)/256)mod 256) & ChrB(((((strLen*8*10*3+54)/ 256)/256)/256)mod 256) & ChrB(0) & ChrB(0) &_
ChrB(0) & ChrB(0) & ChrB(54) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(40) & ChrB(0) &_
ChrB(0) & ChrB(0) & ChrB(strLen*8) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(10) & ChrB(0) &_
ChrB(0) & ChrB(0) & ChrB(1) & ChrB(0)
'------------------En-tête des informations sur l'image de sortie
Réponse.BinaryWrite ChrB(24) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0)&_
ChrB((strLen*8*10*3)mod 256)&ChrB(((strLen*8*10*3)/256)mod 256)&ChrB((((strLen*8*10*3)/256)/256 )mod 256)&ChrB(((((strLen*8*10*3)/256)/256)/256)mod 256)&_
ChrB(196) & ChrB(14) & ChrB(0) & ChrB(0) & ChrB(196) & ChrB(14)&ChrB(0) & ChrB(0) &_
ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0) & ChrB(0)
Pour i = 9 à 0 Étape -1 '--------------Parcourir toutes les lignes
Pour ii = 0 To strLen-1 '------Parcourir tous les mots
Pour iii = 1 à 8 '--------Parcourir tous les pixels
'---------Données d'image de sortie ligne par ligne, mot par mot et pixel par pixel
Si Rnd * 99 + 1 < cOdds Alors '------------- Générer du bruit de manière aléatoire
Réponse.BinaryWrite rndColor
Autre
Response.BinaryWrite vColorData(Mid(vNumberData(vCode(ii)), i * 8 + iii, 1))
Fin si
Suivant
Suivant
Suivant
Fin du sous-marin
%>
Enregistrez le code ci-dessus sous img.asp et insérez <img src=img.asp?tel=010-0000000> à l'endroit où vous souhaitez afficher le numéro de téléphone.