Avatar billede cbadk Novice
25. januar 2006 - 19:14 Der er 6 kommentarer og
1 løsning

Spam Tjek, når der laves en form post til serveren

Hej Exp.dk Brugere

Når man laver en Request.Forms("mintekst") og gerne ville tjekke om "mintekst" indholder et ord der er længere end en hvis længde. Feks.
"Min  dejlige veninde er sødddddddddddddddddddddddddddddddd"

Og jeg så gerne vil have "sødddddddddddddddddddddddddddddddd" taget ud og sendt tilbage til brugen at sætning er betragtet som spam.

Nogle forslag ?
Avatar billede rowl Nybegynder
25. januar 2006 - 19:25 #1
Evt. sådan her
<%
txtstring = "Min  dejlige veninde er sødddddddddddddddddddddddddddddddd"
txtstring = Split(txtstring," ")
maxlength = 30

  For t = LBound(txtstring) to UBound(txtstring)
      If len(txtstring(t)) > maxlength then
    Response.Write "Ordet " & txtstring(t) & " er længere end " & maxlength & ", som er maximum.<br>"
      End if
  Next
%>

Koden deler strengen op i enkelte ord og tjekker om hvert ord er over værdien af maxlength (30 her) og hvis det er skrives en fejl..
Avatar billede cpufan Juniormester
25. januar 2006 - 21:22 #2
eller:

<%
txtstring = "Min  dejlige veninde er sødddddddddddddddddddddddddddddddd"
txtstring = Split(txtstring," ")


  For t = LBound(txtstring) to UBound(txtstring)
      for i = 0 to len(txtstring(t))-2
      if(mid(textstring(t),i,1) = (mid(textstring(t),i+1,1) and (mid(textstring(t),i,1) = (mid(textstring(t),i+2,1) then
      Response.Write "Ordet " & txtstring(t) & " er betragtet som spam<br>"
      End if
      Next
  Next
%>

denne tjekker om 3 sammenhængende bogstaver er ens
Avatar billede cbadk Novice
25. januar 2006 - 22:29 #3
# rowl
Takker for dit forslag.

# cpufan
Ja, også et godt forslag. Har måske også en plads til denne. Hmm...har du så en måde du kan få det ud i en variable også ?..tænkte på de 3 chr!

Her er min 'færdige' tjekkode:

<%
Function CheckStr(TextStr,MaxChr,Dowhat)
txtstring = TextStr
txtstring = Split(txtstring," ")
maxlength = MaxChr

  For t = LBound(txtstring) to UBound(txtstring)
      If len(txtstring(t)) > maxlength then
    Dowhat()
      End if
  Next
 
End Function
%>
Avatar billede cpufan Juniormester
25. januar 2006 - 22:44 #4
<%
txtstring = "Min  dejlige veninde er sødddddddddddddddddddddddddddddddd"
txtstring = Split(txtstring," ")


  For t = LBound(txtstring) to UBound(txtstring)
      for i = 0 to len(txtstring(t))-2
      if(mid(textstring(t),i,1) = mid(textstring(t),i+1,1) and (mid(textstring(t),i,1) = mid(textstring(t),i+2,1)) then
      Response.Write "Bogstaverne " & mid(textstring(t),i,1)&mid(textstring(t),i,1)&mid(textstring(t),i,1) & " er betragtet som spam<br>"
      End if
      Next
  Next
%>
Avatar billede cbadk Novice
10. februar 2006 - 09:56 #5
ok mange tak :D

hæhæ...nu må jeg nok hellere spørge om der er nogle der vil have nogle point???...sidste gang kom jeg selv til at svare og acceptere :( ..det var der nogle der blev lidt sure over...

nogle svar :) ?
Avatar billede cpufan Juniormester
10. februar 2006 - 10:04 #6
jov, - hit med nogle af de dyrebare poængs-
:D
Avatar billede cbadk Novice
10. februar 2006 - 10:19 #7
There you go :P
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester