Autor | Zpráva | ||
---|---|---|---|
blaaablaaa Profil |
#1 · Zasláno: 13. 1. 2009, 13:05:35 · Upravil/a: blaaablaaa
ahoj,
resim, jak ochranit emaily na strance proti spamum. 1. napadlo me prevest vsechny znaky na entity, nevim vska, jestli to dnesni roboti nerozlousknou: viz. http://www.jaknaweb.com/ukazuj.php?f=1&i=172104&t=172104 (zdejsi forum je prevede na text) 2. dalsi moznost je generovat adresu emailu jako obrazek, cimz ji ale bezny user nebude moct beznym zpusobem zkopirovat (a js reseni mi nepripada nejlepsi). 3. Pak jsem premyslel, zda cely odkaz nevlozit pres js document.write, cimz se ale nezobrazi uzivatelum bez js. Ktere reseni vam pripada nejlepsi? Nebo mate nejake jine? Diky |
||
Joker Profil |
#2 · Zasláno: 13. 1. 2009, 13:40:12 · Upravil/a: Joker
blaaablaaa
U sebe na webu to dělám takhle: - Znaky jsou převedené na entity (u mě v patičce teda ne úplně všechny, ale to asi nehraje velkou roli), kolem zavináče navíc <span> a celé to je v odkazu, který nemá href, jen určitou CSS třídu: <a class="kontakt">#109;ai#108;<span>#64;</span>it-jok#35;101;r#46;#99;z</a> - Po načtení stránky se pustí Javascript, který vyhledá odkazy třídy "kontakt", vezme jejich vnitřek, vyhodí <span> a přidá "mailto:" a nastaví to tomu odkazu jako href. Výsledek: - Uživatel s Javascriptem má normální klikací odkaz - Uživatel bez Javascriptu sice nemá klikací odkaz, ale vidí normálně adresu a může si ji zkopírovat - Typický robot bude cucat adresy z odkazů, které vedou na e-mail (href="mailto:..."). Ten se tu nemá čeho chytit, protože href nastavuje až Javascript - Pokud by robot znalyzoval kód stránky, má to alespoň pěkně okořeněné, získat adresu z tohohle, to už by musel být dost chytrý robot :-) ...každopádně podle mě půjde spíš po href u odkazů a zkrachne na předchozím bodě. edit: nějak to rozhodilo můj záměr s těmi entitami... |
||
jrm Profil |
#3 · Zasláno: 13. 1. 2009, 13:45:06
Volím 2) + rozšíření: používám HID (http://hidentity.org/system.php?q=about). Odkaz je obrázek GIF, ve kterém se mění druhy spojení (mail, skype, telefon). Klinutím na obrázek spouštím skript s formulářem pro odeslání mailu...
|
||
blaaablaaa Profil |
#4 · Zasláno: 13. 1. 2009, 13:49:28
Joker
diky, tenhle zpusob mi pripada zatim nejlepsi, pokud nikdo neprijde s necim lepsim, nejspis ho taky pouziju |
||
blaaablaaa Profil |
#5 · Zasláno: 13. 1. 2009, 13:51:02
jrm
1. HID pouzit nemuzu, jde o dynamicky vkladane emaily 2. email by mel byt volne pristupny ke zkopirovani a tvarit se jako normalni odkaz |
||
keeehi Profil |
#6 · Zasláno: 13. 1. 2009, 14:55:26
blaaablaaa
1. obrázek se dá upravit v PHP |
||
blaaablaaa Profil |
#7 · Zasláno: 13. 1. 2009, 15:01:46
keeehi
ja vim, psal jsem to v bode 2. ale chci, aby mel uzivatel moznost pomoci ctrl+c email zkopirovat |
||
Joker Profil |
#8 · Zasláno: 13. 1. 2009, 15:08:38
keeehi
obrázek se dá upravit v PHP Pořád mi to moje řešení připadá lepší... respektive mi připadá lepší mít e-mail textově, aby si ho někdo mohl zkopírovat. Zvláště když z neznámého důvodu většina lidí preferuje webové rozhraní e-mailu před e-mailovým klientem. |
||
blaaablaaa Profil |
#9 · Zasláno: 13. 1. 2009, 15:13:20
Joker
napr. v kavarnach netovych nemaji nastavene klienty, v praci nechteji posilat z firemniho mailu, ... |
||
Jen_tak Profil * |
#10 · Zasláno: 13. 1. 2009, 17:11:37
Já to dělám takto.
Vyděl jsem to někde na netu (tuším, že RS2). <a href="mailto:mail@jpw.cz"> mail@<!-- Spam bot je trouba --> jpw.cz</a> A zavináče mám pomocí entit (nevím teď přesně jakou entitu má zavináč). |
||
blaaablaaa Profil |
#11 · Zasláno: 13. 1. 2009, 19:38:33
Jen_tak
#64; je zavinac ale nevim, jestli tohle reseni bude stacit, psat spambot, tak asi budu hledat mailto: v odkaze ... |
||
bohyn Profil |
#12 · Zasláno: 13. 1. 2009, 20:11:31 · Upravil/a: bohyn
blaaablaaa
„psat spambot, tak asi budu hledat mailto: v odkaze ...“ Tak pro neprevest na entity i to mailto? href="m& #97;ilto& #58;mail& #64;moje.& #46;tld" |
||
srigi Profil |
#13 · Zasláno: 13. 1. 2009, 21:12:23
S tymi entitami si moc nefandite. Je to predsa strojovy zapis, ked to dokaze previest na znaky browser, tak to urcite dokazu aj boti. Vsak je to prachobycajna tabukla. Osobne si nemyslim ze by spamery pisali botov bez podpory entit. Naopak, myslim si, ze uz pracuju na Javascripte.
|
||
bohyn Profil |
#14 · Zasláno: 13. 1. 2009, 23:19:05
srigi
„S tymi entitami si moc nefandite. Je to predsa strojovy zapis, ked to dokaze previest na znaky browser, tak to urcite dokazu aj boti. Vsak je to prachobycajna tabukla.“ S tim bych nesouhlasil. Parsovani dlouhych textu nejakou chvili trva a za tu dobu bot muze najit 10 jinych adres nesifrovanych. Parsovani entit pride na radu az zmizi nesifrovane adresy a az zmizi i sifrovane takpak teprve prijde na radu JS. Dneska JS prilis narocny na vypocetni vykon nez aby byl realne nasazen v robotech. |
||
blaaablaaa Profil |
#15 · Zasláno: 14. 1. 2009, 08:26:42
bohyn
tak to mam ted, nicmene asi pouziju Jokeruv zpusob - prijde mi jistejsi |
||
SwimX Profil |
#16 · Zasláno: 14. 1. 2009, 10:01:01
blaaablaaa
Soáuhlasím, Jokerova verze se mi líbí. Entity nevím, ale myslím, že je to málo. Dělat obrázwk přes phpko by bylo asi nejjistější (+náký čáry a tečky na náhodných pozicích) ale ne zrovna user-friendly. Osobně do odkazů na emaily nedávám mailto: stejně, jak zde bylo řečeno, dost lidí nepoužívá klienty |
||
Časová prodleva: 2 roky
|
|||
mpscz Profil * |
#17 · Zasláno: 7. 9. 2010, 10:24:15
Já to dělám takhle: vezmu PHP skriptem z DB e-mail, rozdělím ho (explode) na část před a za zavináčem a za tečkou.
Získám 3 proměnné, nakrmím jimi v PHP vygenerovaný JavaScript, který to potom zobrazí takhle: mailto:+cast1+@+cast2+.+cast3 |
||
Bubák Profil |
#18 · Zasláno: 7. 9. 2010, 14:47:54
mpscz:
A čím jsou nakrmeni uživatelé bez JS? |
||
blaaablaaa Profil |
#19 · Zasláno: 7. 9. 2010, 15:15:15
Bubák:
Co treba neco takoveho (pisu v jQuery z hlavy, urcite tam budou chyby): $(function(){ $(".mail").each(function(i, el){ var pattern = /^[A-Z0-9._%+-]+|[A-Z0-9.-]+\.[A-Z]{2,4}$/; var mail = $(el).html(); var res = mail.match(pattern); if ( res[0] != undefined) { $(el).replaceWith("<a href='mailto:"+res[0]+"'>"+res[0]+"</a>"); } }) }); <noscript class="mail">pepa|seznam.cz (misto | pouzijte @)</noscript> |
||
Časová prodleva: 14 let
|
0