Gå til innhold

Hindre spambots med php/html


Anbefalte innlegg

Hei!

 

Jeg har en del script som henter ut e-post adresser fra en database og legger dem ut på en web-side (php/mysql). Dette fører jo til at spambots som går rundt på nettet henter dem opp og starter å spy ut spam til adressen. Hva er beste måten å hindre dette på i php/html? Jeg vet at jeg kan lagre dem som et bilde, men vil helst ha mulighet til å klikke på dem og få dem direkte inn i e-post programmet. Noen som har noen gode tips?

Lenke til kommentar
Videoannonse
Annonse

Siden du har alle mailene i databasen, så kan du la mailadressen linke til en side som henter ut mailadressen fra databasen, og bruker header til å sende mailen.

 

Om dette er så veldig mye bedre vet jeg, ikke. Er ikke sikker på hvordan de spambotene opererer.

 

eks:

<a href='post.php?id=134'>Trykk for å sende post</a>

og i post.php:

$id = mysql_real_escape_string(GET["id"]);

// DB oppkobling
$sql  = "SELECT mail FROM personer WHERE id={$id}";
$res = mysql_query($sql) or die($sql);
$row = mysql_fetch_object($res);
header("location: mailto:".$row->mail);
exit;

Den vil da åpne seg i lokal mail klient, med rett mail adresse i til feltet.

Kanskje ?

 

EDIT: SQL

Edit 2: Fant plussli ut at jeg hadde brukt mysql_fetch_object... :)

Endret av kakkle
Lenke til kommentar

En mulighet kan være å benytte Adobe Flash. Ved å la et Flash-dokument hente og vise en e-postadresse vil det gjøre det vanskelige for spam-boter å finne e-postadressen, da (etter hva jeg tror) de fleste spam-boter ikke er programmert til å lese Flash-dokumenter - mulig jeg tar feil?. Flash-dokumenter kan også linke til mailto:-adresser.

 

Sikkerhetshullet ligger der hvor Flash-dokumentet må hente ned e-postadressene fra databasen. Siden dette skjer på klientens maskin, vil det også være mulig for en svært avansert spam-bot å finne adressen, men som sagt tror jeg ikke dette blir noe problem.

 

Eventuelt kan du lage en enda mer avansert løsning hvor et script (f.eks. PHP) genererer et Flash-dokument med adressen. Slik vil ikke klientens maskin laste ned adressen i klartekst på noen måte.

Lenke til kommentar
<script language="JavaScript">

function writeTo(suffix, prefix) {
 location.href = "mai" + "lto:" + prefix + "@" + suffix;
}

</script>

<a href="javascript:writeTo('hotmail.com','supertest');">Test</a>

?

9548672[/snapback]

De fleste spamboter takler JavaScript. Hovedregelen er at alt brukeren kan lese i klartekst, også kan leses av et program (spambot).

Lenke til kommentar
Hvor blir noe postet i klartekst der?

9553187[/snapback]

Nettleseren viser adressen i klartekst. Det betyr at det ikke er noe problem for et annet program å kunne finne adressen.

9554096[/snapback]

 

Den viser adresse delene i klar tekst, ikke hvordan de er satt sammen. Da må i så fall bot'en lese javascriptet og skjønne hvilken rekkefølge som er riktig. Men jeg ville fortsatt ikke brukt javascript til å løse dette ;)

Lenke til kommentar
Den viser adresse delene i klar tekst, ikke hvordan de er satt sammen. Da må i så fall bot'en lese javascriptet og skjønne hvilken rekkefølge som er riktig. Men jeg ville fortsatt ikke brukt javascript til å løse dette ;)

9556937[/snapback]

Riktig som du sier. Nettleser viser ikke teksten i klartekst (kildekoden), men det er like enkelt for et program å "lese" det JavaScript returnerer som for et menneske. JavaScript er derfor langt fra en sikker måte å sjule e-postadresser på Internett.

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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...