Mini solution antispam, quand le CSS retourne l’envers du PHP

Dans le monde du web, un seul fléau uni tout le monde contre lui, le spam.
Rien à dire, en plus de ne pas être écologique, on a du mal à y voir un intérêt, pauvres humains que nous sommes. Mais quand vient le moment d’écrire son adresse mail sur un site web qui sera visible par tout le monde, on en tremblerait presque.
Du coup, il existe beaucoup de techniques, l’idéal étant encore de ne pas écrire son adresse mail en toutes lettres sur son site! Mais des fois, cela reste bien pratique. Voici donc une solution très simple à mettre en place, qui sans être parfaite, assure quand même le boulot dans la majorité des cas.
A noter que cette technique est tiré du site de Symfony himself. Comme je ne l’avais jamais croisé auparavant, ca peut valoir le coup d’en parler un peu.
Le principe est simpliste mais bien pensé.
On écrit, notre adresse mail à l’envers en PHP (ou tout autre langage serveur on est d’accord) et on demande à notre CSS de l’afficher à l’envers également. Et vous l’aurez compris, l’envers de l’envers, et bien… c’est l’endroit! Fou je vous l’accorde.
En terme de code, voilà ce que ca donnera schématiquement:
<span class="reverse"> <?php echo strrev('monmail@monadresse.com') // qui va écrire moc.esserdanom@liamnom du coup ?> </span>
Il suffit maintenant de changer la direction de lecture de notre span reverse via CSS:
span.reverse { direction:rtl; unicode-bidi:bidi-override; }
Et voilà, notre adresse est maintenant lisible à l’endroit à tout le monde bénéficiant d’un support CSS, donc en théorie, tout le monde sauf, les vilains méchants robots spammeurs. Malheureusement ça reste de la théorie mais en pratique, cela reste un manque niveau accessibilité, tout comme on est pas sûr que les robots ne sauront pas interpréter le CSS très bientôt. Mais je pense que ca reste une solution à connaitre.
9 Réponses
Laisser un message

Pour contrer cette méthode – qui est quand même bien dans l’esprit « Système D » et bien pensée – il faudra que le robot récupère les mots avec arobase dedans et analyse si l’envers et l’endroit sont des adresses e-mails valides.
En effet, si « monmail@monadresse.com » est valide, je ne suis pas sûr que « moc.esserdanom@liamnom » le soit.
Merci pour cette bonne idée en tout cas.
C’est… une idée :) Qui a le mérite d’exister :D
Mais en effet soyons réalistes, si demain les gros fournisseurs d’adresses emails que sont les forums et communautés se mettent à utiliser cette astuce, les robots sauront décrypter l’anomalie dès le surlendemain.
Le plus gros problème ne se trouve pas au niveau des moteurs et autres bots mais plutôt au niveau des lecteurs d’écrans selon moi. Que se passe-t-il pour une personne atteinte d’un handicap qui utilise un logiciel vocal comme Jaws pour sa navigation ? Les CSS n’étant pas interprétées, l’adresse e-mail reste toujours présentée à l’envers…
On est bien d’accord, c’est pas la solution idéale en particulier comme la souligner Hugo, concernant son manque d’accessibilité.
Moi je dis, rien ne vaut un bon formulaire! Comment ça le mien marche pas?… oué bah oué :p
l’autre inconvenient de cette methode c’est le copier coller, quand une personne veux ecrire a cette personne, on est obliger d’ecrire le mail a la main (en tout cas si on utilise firefox) parce que selectionner -> copier -> coller dans le client mail se retrouve a coller le texte a l’envers.
Exact, c’est d’ailleurs comme ça que je me suis rendu compte de cette solution sur le site de Symfony :p
Solution originale, mais je pense qu’elle est loin de régler le problème à long termes.
Comme tu le dit toi même, cela fonctionnera un temps avant que les programmes incriminés ne s’adaptent.
Je pense que le spam est un problème insolvable. C’est comme pour le téléchargement de fichier licencié via les réseaux de type p2p.
Si tu veux résoudre le problème définitivement tu doit forcément enfreindre les valeurs dans lesquelles nous croyons (neutralité des réseaux, tout ca).
C’est un peu le supplice de Tantale.
[...] solution ingénieuse via CSS mais une fois de plus, elle trouve ses limites dans [...]
Solution intéresse à un problème bien réel. C’est quand même pratique d’avoir une adresse mail en plus d’un formulaire, mais il se pose ce problème de spam… effectivement je pense que les robots peuvent assez vite s’adapter à cette solution (comme ils le font déjà en prenant en compte le (at) au lieu du @ )
Reste la solution de mettre l’email dans une image, mais c’est bien moins pratique, et puis ya toujours le risque d’avoir des robots qui scannent en OCR (bon je vais peut être un peu loin là^^ )