Kom ihåg mig?
Home Menu

Menu


Ftåga och svar i form

 
Ämnesverktyg Visningsalternativ
Oläst 2007-11-04, 14:53 #1
vidirs avatar
vidir vidir är inte uppkopplad
Medlem
 
Reg.datum: Jan 2004
Inlägg: 291
vidir vidir är inte uppkopplad
Medlem
vidirs avatar
 
Reg.datum: Jan 2004
Inlägg: 291
fick plötsligt över 300 email (bara spam) under helgen via mitt kontaktform..

Jag ger snart upp, detta får man att tappa lusten att finnas med på internet.

Jag sitter här och er hellt mollställd, finns det något enkelt sätt att sätta ett fråga fält in i mitt enkla formulär?

Typ, Vad heter gillou i förnamn Svar: osv. ?


<form name="contact" method="post" onSubmit="return valform();" action="skicka.php">
Namn

<input type="textbox" name="textname">


E-mail adress

<input type="input" name="email">






Meddelande:


<textarea name="details" cols="40" rows="8" wrap="VIRTUAL" id="details"></textarea>




<input type="submit" name="submit" value="Skicka">
<input type="reset" name="reset">
</form>

Tack på förhand..
vidir är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-11-04, 15:00 #2
coredevs avatar
coredev coredev är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Sep 2007
Inlägg: 1 554
coredev coredev är inte uppkopplad
Bara ett inlägg till!
coredevs avatar
 
Reg.datum: Sep 2007
Inlägg: 1 554
Hej. Det finns rätt enkla saker som du kan göra.

Oftast är det en spindel som hämtar källkoden till ditt formulär, för användning vid senare tillfälle. Om du har en "hidden" variabel i ditt formulär som ändras varje dag så skulle du stoppa de flesta spam-attacker, eftersom roboten kommer att använda ett gammalt värde. Exempel

Kod:
<input type="hidden" name="secretcode" value="<?php echo(md5('KimJongIl' . date('z'))); ?>" />
KimJongIl fungerar som ett kryptologiskt salt och date('z') producerar The day of the year (starting from 0)

Sedan jämför du bara att secret_code är det samma som du förväntade dig, innan du skickar iväg mejlet / registrerar användare / what ever. Har tagit bort 99% av problemen för mig.
coredev är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-11-04, 15:07 #3
fors fors är inte uppkopplad
Medlem
 
Reg.datum: Aug 2006
Inlägg: 131
fors fors är inte uppkopplad
Medlem
 
Reg.datum: Aug 2006
Inlägg: 131
Citat:
Originally posted by coredev@Nov 4 2007, 15:00
Hej. Det finns rätt enkla saker som du kan göra.

Oftast är det en spindel som hämtar källkoden till ditt formulär, för användning vid senare tillfälle. Om du har en "hidden" variabel i ditt formulär som ändras varje dag så skulle du stoppa de flesta spam-attacker, eftersom roboten kommer att använda ett gammalt värde. Exempel

Kod:
<input type="hidden" name="secretcode" value="<?php echo(md5('KimJongIl' . date('z'))); ?>" />
KimJongIl fungerar som ett kryptologiskt salt och date('z') producerar The day of the year (starting from 0)

Sedan jämför du bara att secret_code är det samma som du förväntade dig, innan du skickar iväg mejlet / registrerar användare / what ever. Har tagit bort 99% av problemen för mig.
Värt att notera är att användaren kan skicka in fel dag om denna skriver i formuläret vid övergången mellan två dygn. Det kan man ju kolla på serversidan, att runt midnatt så är det okej med båda datumen.
fors är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-11-04, 16:22 #4
studiox studiox är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Aug 2004
Inlägg: 1 356
studiox studiox är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Aug 2004
Inlägg: 1 356
Lättast är ju att lägga in en bild som man måste "skriva av"; som dom flesta forum använder idag vid nyregistreringar. Annars kan du verifiera e-post adressen med en enkelt MX uppslagning, spammar gillar inte att använda riktiga adresser eller domäner.
studiox är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-11-05, 10:51 #5
vidirs avatar
vidir vidir är inte uppkopplad
Medlem
 
Reg.datum: Jan 2004
Inlägg: 291
vidir vidir är inte uppkopplad
Medlem
vidirs avatar
 
Reg.datum: Jan 2004
Inlägg: 291
Tack för svaren,, jag undrar dock om det du skrev "fors" att man lägger en hidden <input type="hidden" name="secretcode" value="<?php echo(md5('KimJongIl' . date('z'))); ?>" />

om jag förstår dig rätt så skapar jag ett input fält "secretcode" där besökaren skriver in det hemliga "KimJongIl" men hur lägger jag in detta i filen send.php ?
vidir är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-11-05, 12:29 #6
coredevs avatar
coredev coredev är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Sep 2007
Inlägg: 1 554
coredev coredev är inte uppkopplad
Bara ett inlägg till!
coredevs avatar
 
Reg.datum: Sep 2007
Inlägg: 1 554
Citat:
Originally posted by vidir@Nov 5 2007, 11:51
Tack för svaren,, jag undrar dock om det du skrev fors att man lägger en hidden input type=hidden name=secretcode value=?php echo(md5(KimJongIl . date(z))); ? /
om jag förstår dig rätt så skapar jag ett input fält secretcode där besökaren skriver in det hemliga KimJongIl men hur lägger jag in detta i filen send.php ?
Tja vidir.

Nej användaren behöver inte skriva in något alls. "secretcode" är en hidden-variabel i ditt formulär som ändras en gång per dag. Eftersom spam-script oftast använder en cachad (alltså gammal) version av din sida så kommer de ha fel värde i "secretcode".

KimJongIl är bara ett kryptologiskt salt som gör md5:an lite säkrare för vissa attacker. Hitta på något eget. Vad det är spelar ingen roll, bara du använder det på alla ställen där du genererar md5:an.

Detta är alltså en jäkligt enkel lösning, som inte kräver något av användaren. Användaren vet inte ens om det.

E du me mig? om inte får jag försöka förklara bättre
coredev är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-11-05, 13:50 #7
jonny jonny är inte uppkopplad
Supermoderator
 
Reg.datum: Sep 2003
Inlägg: 6 941
jonny jonny är inte uppkopplad
Supermoderator
 
Reg.datum: Sep 2003
Inlägg: 6 941
Eller så gör du samma sak baserat på besökarens ip-adress, borde fungera det också
jonny är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-11-05, 16:02 #8
stakess avatar
stakes stakes är inte uppkopplad
Medlem
 
Reg.datum: May 2005
Inlägg: 219
stakes stakes är inte uppkopplad
Medlem
stakess avatar
 
Reg.datum: May 2005
Inlägg: 219
En annan liten klurig lösning man kan göra för att lura en del spambots. Har fungerat för mig i de flesta fall.

<input type="text" style="display: none;" name="email" />

Detta fält kommer botten fylla i då den i regel letar efter generella fält som namn, email, url osv. En vanlig användare kommer dock inte se fältet och därmed inte fylla i det, sen kontrollerar du om det är ifyllt, om så är fallet så är det garanterat en bot som gjort det.
stakes är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-11-05, 19:00 #9
PKazes avatar
PKaze PKaze är inte uppkopplad
Medlem
 
Reg.datum: Nov 2003
Inlägg: 287
PKaze PKaze är inte uppkopplad
Medlem
PKazes avatar
 
Reg.datum: Nov 2003
Inlägg: 287
Det var en del kluriga lösningar här, jag tackar för det jag också.

Själv har jag löst spamproblemet genom att ha ett extrafält där det t.ex. står "Skriv dator i rutan här bredvid:", men det kräver ju som sagt ett extrafält för besökaren att fylla i.
PKaze är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-11-05, 20:08 #10
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
Kristoffer G Kristoffer G är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2007
Inlägg: 1 014
två olika lösningar som jag själv använder

1. Ett extra fält där besökaren får svara på "vad är 10+80" där 80 är ett slumpat nummer
2. Ett extra fält där besökarna får skriva in ett utskrivet ord baklänges. Orden har jag i databasen.

Aldrig haft problem med spam
Kristoffer G är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 14:12.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017