Avatar billede zubmit Nybegynder
10. januar 2004 - 19:40 Der er 11 kommentarer og
1 løsning

Spam kontrol

Hvordan laver man sådan at når sender et indæg ind på min tagwall kontrolere den at det ikke bare er spam som f.eks "Jeg spammer @@@@@@@@@@@@@@@@@@@@" eller "Sikke en lorte side" også står det bare på de næste 5 side.
Avatar billede erikjacobsen Ekspert
10. januar 2004 - 19:42 #1
1) Du kan lade være med at indsætte indlæg med bestemte ord
2) Du kan nøjes med at tillade indlæg af begrænset størrelse
3) Du kan tillade et max antal indlæg fra samme IP
(sikkert flere muligheder)

Hvis du kan, så kan du drille spammeren ved at vise indlægget for
vedkommende, men ikke for andre (evt ved check på IP)

Alt sammen kræver selvfølgelig lidt programmering... ;)
Avatar billede zubmit Nybegynder
10. januar 2004 - 19:53 #2
Ja det er jo rigtigt nok. Men hvis jeg nu gerne vil have at hvis det samme indlæg bliver skrevet mere end 1 gang så kommer der en fejl der siger "Der findes allerede det indlæg" jeg kan ikke helt se hvordan man kan gøre det?
Avatar billede erikjacobsen Ekspert
10. januar 2004 - 19:58 #3
Du kan lave en md5 på hvert indlæg - så er det nemt at finde ens indlæg.
Okay - du bruger ASP - der er md5 ikke indbygget, men det kan findes...
Avatar billede dna Nybegynder
10. januar 2004 - 20:02 #4
md5 er jo ikke ligefrem nødvendigt!

Hvorfor ikke bare kontrollere om indholdet af teksten er det samme som noget der allerede findes?!

Kan da gøres meget simpelt.

dna
Avatar billede erikjacobsen Ekspert
10. januar 2004 - 20:03 #5
Det er hurtigere med en md5 - hvis ellers man havde en hurtig md5 ;)
Avatar billede zubmit Nybegynder
10. januar 2004 - 20:06 #6
Nu er det sådan at jeg ikke lige ved hvad md5 er.
kunne man bruge denne if-sætning

If textarea = indlaeg Then 'indlaeg er den tabel i databasen
Response.write "Dette indlæg findes allerede!"
Else
'et eller andet
Avatar billede dna Nybegynder
10. januar 2004 - 20:07 #7
Jaja erik! Vi har fattet at du mere tilhænger af php end asp! :D

zubmit: Du kan lave det sådan her:

tekst = "Dette er teksten fra en dum spammer"
sql = "select * from tagwall where beskedFelt = '"& tekst &"'"
set record = conn.execute(sql)

if record.eof then
  ' Der findes ikke et indlæg der ligner.. og vi kan oprette.
else
  ' Der findes et indlæg med præcis det indhold. Opret ikke.
end if
Avatar billede erikjacobsen Ekspert
10. januar 2004 - 20:10 #8
Jeg har skam en md5 til ASP/VB liggende et sted, som ovenikøbet har været brugt.
Man kan vist også tilkøbe en lille .dll med den i. Så det er ikke så afgørende.

Generelt er det bare at din test tager tid - ligemeget med <100 indlæg, af
betydning for >100000 indlæg. :)
Avatar billede dna Nybegynder
10. januar 2004 - 20:12 #9
Jep.. men, nu snakker vi vist en privat tagwall... tror vi er under 100.000 indlæg! Selvom jeg jo selvfølgelig ikke ved det! :D
Avatar billede dna Nybegynder
10. januar 2004 - 20:14 #10
Tror mit virker.. så vil lige smide et svar! :D
Avatar billede zubmit Nybegynder
10. januar 2004 - 20:19 #11
Ok tak det er faktisk lige sådan noget jeg leder efter. Selvom jeg stadig ikke ved hvad md5 er. Nå skide vær med det.
Avatar billede rbl Praktikant
10. januar 2004 - 20:27 #12
Som Erik nævner, så er det også en god idé at begrænse brugen af bestemte ord. F.eks.:

Tekst = replace(Tekst, "fuck", "sjov")
Så bliver "fuck" erstattet med "sjov"

eller:
if instr(Tekst, "fuck") then
  Opret ikke
else
  Opret
end if
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