Gå til innhold

Hvordan stoppe spamming av gjestebok?


Anbefalte innlegg

Nå har altså bot'ene funnet meg, og det er umulig å stoppe dem. Gjesteboken min er full av reklame for porno, og jeg vet ikke hvordan jeg skal fikse det.

 

Det er vel kanskje en mulighet å ha et sånt bilde med skrift på som man skal skrive av for å verifisere at man er et menneske? Hva kalles denne metoden? Finnes det et gratis system som er lett å implementere i php-koden min?

Lenke til kommentar
Videoannonse
Annonse
Nå har altså bot'ene funnet meg, og det er umulig å stoppe dem. Gjesteboken min er full av reklame for porno, og jeg vet ikke hvordan jeg skal fikse det.

 

Det er vel kanskje en mulighet å ha et sånt bilde med skrift på som man skal skrive av for å verifisere at man er et menneske? Hva kalles denne metoden? Finnes det et gratis system som er lett å implementere i php-koden min?

8227931[/snapback]

Legger ved en jeg lagde fort i stad, mener den skal funke :)

 

PHP
<?php 

 

$jimmiverdi = array('Jimmi', 'JIMMI', 'jimmi', 'JImmi', 'JIMmi', 'JIMMi', 'jImmI', 'JiMMi' );

$meldingverdi = array('<a>', 'href', 'img' );

$meldingid = $_POST['message'];

$navnid =  $_POST['name'];

$diemessagenavn = "Du er bannet fra å skrive på denne gjesteboka";

$diemessage = "HTML koder er ikke gyldig i denne gjesteboka";

 

if($navnid = $jimmiverdi) { die($diemessagenavn); }

if(strstr($meldingsverdi,$meldingsid)) { die($diemessage); }

 

echo "Scriptet fungerer";

 

// Dette skal hindre de fleste spam meldinger, men det hjelper også å kalle id tagene til melding, epost, 

// hjemmeside ol andre navn enn engelske kjente navn som name, comment, website, homepage, osv

?>

Bare glemm det med jimmi, er bare en person jeg ikke liker ;)

Endret av HoaXed
Lenke til kommentar
PHP
<?php 

$jimmiverdi = array('Jimmi', 'JIMMI', 'jimmi', 'JImmi', 'JIMmi', 'JIMMi', 'jImmI', 'JiMMi' );

8228048[/snapback]

Koden din har en del feil (som du sikkert oppdager hvis du sjekker), men arrayet er jo helt unødvendig - mye enklere å heller bare gjøre følgende:

$jimmiverdi = "jimmy";

$navnid = strtolower($_POST['name']);

 

 

nahoy: Den enkleste løsningen på dette problemet er å bare legge til en tekstboks der du ber brukeren skrive inn en streng. Det kan f.eks. stå: "Skriv inn ordet 'bananer' i dette feltet: [tekstboks-her]

 

I scriptet som legger til kommentaren sjekker du da om det står "bananer" i feltet, og hvis ikke godtar du ikke kommentaren.

 

Er ganske unødvendig med noe mer avansert enn det - fordi en bot vil uansett ikke klare å gjøre det automatisk, med mindre den er spesielt utviklet for ditt nettsted, noe den ikke er.

Endret av Lurifaksen
Lenke til kommentar

Isteden for å bruke passe småavanserte metoder så bruker jeg en veldig enkel metode som har vist seg veldig effektiv, nemlig gjemme ett ekstra inputfelt via css. Bot'ene tror feltet må fylles ut, noe de også gjør. På neste side (den som mottar data'ene som har blitt postet) så sjekker jeg om feltet er tomt. Er det ikke tomt, så forkaster jeg data'ene.

 

Dette funker 100% for meg så langt. Her er ett eksempel på ett slikt gjemt felt:

<input type="text" name="ettfeltnavn" class="display:none; visibility:hidden;">

 

 

og så kan du f.eks legge dette rundt koden som lagrer innlegget:

if (!$_POST["ettfeltnavn"]){

....  <-- her skal lagringskoden være

}

Lenke til kommentar
nahoy: Den enkleste løsningen på dette problemet er å bare legge til en tekstboks der du ber brukeren skrive inn en streng. Det kan f.eks. stå: "Skriv inn ordet 'bananer' i dette feltet: [tekstboks-her]

 

For å gjøre den enda bedre så kan du be dem svare på 'Hvilken frukt er gul og bøyd som en halvmåne?' og sjekke etter array('banan', 'bananen', 'bananer') eller noe.

 

Isteden for å bruke passe småavanserte metoder så bruker jeg en veldig enkel metode som har vist seg veldig effektiv, nemlig gjemme ett ekstra inputfelt via css. Bot'ene tror feltet må fylles ut, noe de også gjør. På neste side (den som mottar data'ene som har blitt postet) så sjekker jeg om feltet er tomt. Er det ikke tomt, så forkaster jeg data'ene.

8247257[/snapback]

 

Heller ikke noen dum ide..

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...