Designed by Derf !
173 en ligne   Boutique | Sites | Bar | Forum | PhpBB | Actu | Glossaire | Codes | Tips | Liens | Livres | Lettre  


 Recherche

 NewsLetter






   

Captcha «maison» sans extension (1/3)

Et en plus, c'est gratuit ;)





DB77
Un ami m'a demandé de l'aide ce matin pour insérer un captcha dans un formulaire pour son site perso.
Et bien sûr, dès l'instant où la création de site web passe par un logiciel comme Dreamweaver ou autre, il faut, pour réaliser ce contrôle, installer une extension, parfois payante.
Alors, voyons comment, sans aucune extension, réaliser ce contrôle, soit en ASP, soit en PHP...


Préambule - La version ASP - La version PHP


Préambule

 Les bases du problème à résoudre 
De plus en plus de pourriels (spams) arrivent dans les boîtes aux lettres. Souvent, des robots récupèrent des adresses électroniques en "épluchant" les pages des sites, ou utilisent les formulaires pour inonder les boîtes aux lettres des webmestres.
Devant ce phénomène grandissant, les développeurs ont imaginé un contrôle, sous forme d'une image représentant un code, obligeant l'utilisateur à le saisir afin de vérifier qu'il ne s'agit pas d'un robot.
Cette particularité est apparue sur les sites de téléchargement, évitant ainsi le "pompage" automatique à l'aide d'aspirateurs de sites par exemple.
Ainsi, si le code saisi ne correspond pas à l'image générée, le courriel n'est pas envoyé ou le téléchargement est refusé.
Concernant les adresses, il est possible de la faire apparaître sous la forme "nom dot prenom at domaine dot fr" par exemple, chacun sachant très bien aujourd'hui ce qui signifient "at" et "dot".

 La solution retenue 
La méthode n'est pas fiable à 100%, car il existe des robots capables de scanner des images afin d'en déterminer les caractères, mais elle devrait suffire à éloigner les plaisantins.
Le principe retenu est le suivant :
  • Une image de fond pour brouiller légèrement ;
  • Une suite d'images représentant le code.

  • Les avantages de ce principe :
  • Chacun pourra créer son propre fond ;
  • Chacun pourra créer ses propres images ;
  • Chacun pourra adapter la présentation.

  • Les désavantages de ce principe :
  • N'est pas fiable à 100% ;
  • Demande un peu de travail graphique ;
  • Nécessite un minimum de codage.

  • Le code généré sera stocké dans une variable de session pour éviter qu'il soit dans la page elle-même et donc facilement récupérable, et verra sa durée de vie limitée à celle de la session.
    La mise en place se fera de façon très simple :
  • Un fichier include pour générer le captcha et la variable de session ;
  • Une comparaison de la variable postée et de la variable de session après soumission.

  •  Les images 
    L'image de fond :

    Quelques caractères :

    Le mélange des deux :

    Chacun pourra donc modifier à sa guise cette présentation, en changeant l'image de fond, en modifiant les caractères, en changeant la taille et/ou leur inclinaison, afin de brouiller davantage les pistes :)


    Pour pouvoir écrire dans ce forum, identifiez-vous !

      v1.3p © ASP-PHP.net 2002  

    DB77 le 13/04/2009 (20 699 hits)
    Didier Téléchargez gratuitement et légalement des logiciels Microsoft ! Si, si ;)
    • Visual Studio 2010
    • Office 2010
    • Expression Studio 3
    • SQL Server 2008
    • et d'autres...
    Au fil des news  
    Magazines - Le N°128 de Programmez est disponible
    Magazines - Le N°127 de Programmez est disponible
    Dreamweaver CS4 + Php + Mysql - Trucs et Astuces - Part 6
    Pour continuer dans le même style, je vous propose une suite au précédent article. Rechercher tous ...
    Adobe - Adobe Photoshop.com Mobile pour iPhone 1.1
    JavaScript - Ajouter une page dans vos favorites
    Dreamweaver CS4 + Php + Mysql - Trucs et Astuces - Part 5 -
    Je vous propose cette fois deux astuces. Comment exporter une feuille de style avec l'aide de ...
    SharePoint Personalization Site Links - Les liens personnalisés des MySite SharePoint
    Nous avons vu dans les articles précédents comment agrémenter les pages de recherche afin de ...
    Magazines - Le n°126 de Programmez est disponible
    Outils - Traducteur en ligne automatique pour site web
    Adobe - Adobe Photoshop.com Mobile pour Iphone
    Magazines - Le n°125 de Programmez est disponible
    Adobe - Adobe AIR 2 et Flash Player 10.1version bêta
    Les conférences autour des technologies Microsoft - Liste non exhaustive des grands évènements
    Nous allons essayer de regrouper un grand nombre des évènements autour des technologies Microsoft ...
    Magazines - Le n°124 de Programmez est disponible
    PHP - Forum PHP 2009
    Composants - eFace - XAML en Java
    WPF - Désactiver le bouton de réduction d'une fenêtre
    Magazines - Le n°123 de Programmez est disponible
    Magazines - Le n°122 de Programmez est disponible
    Auditer une ferme SharePoint - Assurer le bon fonctionnement de SharePoint
    Dans le cadre de la bonne gestion de son environnement SharePoint, il est utile de faire un ...
    SQL Server 2008 Report Builder 2.0 - Installation et utilisation de Report Builder 2.0
    Dans le cadre de la création de rapports pour SQL Server Reporting Services 2008, un outil est ...
    Magazines - Le HS N° 1 de Web Design est disponible
    Adobe - Adobe propose en Open Source les frameworks.....
    Outils - EntityBuilder
    CSharp - Sérialisation XML de vos objets
    Magazines - Le n°121 de Programmez est disponible
    Adobe - Adobe annonce MAX 2009 !
    Outils - WhoIs
    [MAJ] Dreamweaver MX + Php + MySql - Les formulaires - partie 3
    Mise à jour du code, par DB 77, affichage du code erreur, dans la page erreur.php, traduction des ...
    PHP - News avec photo - Système de gestion - affichage
    Gestion - Administration - Affichage d'une "News", "Actualité", "Info", ... avec : - mise en forme ...
    Outils - Crypt
    Dreamweaver Php Mysql - Région répétée imbriquée
    Je rebondis, sur un post du forum, pour vous montrer comment obtenir grâce à l'extension Simulated ...
    Magazines - Le n° 120 de Programmez est disponible
    Gérer les bases de contenu SharePoint - Gérer la croissance du volume des données
    Dans le cadre de la gestion quotidienne de ferme SharePoint, il existe une partie qu'il faut ...
    PHP - Le Coach PHP sur Visual Studio
    .NET - Ecrire une application .NET utilisant MySQL
    PHP - Utilisation de PHP dans le monde Microsoft
    Magazines - Le n° 119 de Programmez est disponible
    Adobe - Adobe annonce Photoshop Marketplace
    [MAJ] Tutoriel AJAX simple - En avant vers le WEB2.0
    Mis à jour le 20/04/2009
    Tutorial : HTML | Scripting | ASP-PHP | ASP.net | SQL Server | XML
    Sharepoint | XAML | Pocket | Dreamweaver | VML | Divers
      Scripts : Scripting | ASP-PHP | ASP.net | Divers
      Boutique | Annuaire | Bannières | Météo | Tribune | Partenariats
    v3b © Didier 2003   
     

    Corpo Sciences de Reims Partitions gratuites Carte, météo, annonces
     MVP DotNet Project TechNet ASP-magazine Groupes Utilisateurs Microsoft