Installer un antispam (Captcha) - PHP - Programmation
Marsh Posté le 18-06-2007 à 20:11:49
J'ai augmenté la hauteur de l'espace réservé à l'image du Captcha (qui fait 200x70) :
Citation : <tr> |
Sans résultat...
J'ai aussi essayé un autre modèle de cryptogrammes (BlackWhite), plus petit en largeur... Pas mieux, toujours pas d'image.
Marsh Posté le 19-06-2007 à 07:31:16
Cryptograph nécessite le support dans php de GD et Freetype. Vérifier avec phpinfo() ce support.
Marsh Posté le 19-06-2007 à 08:48:21
Salut,
le sujet a été débattu ici, si ça peut te donner qq pistes ...
http://forum.hardware.fr/hfr/Progr [...] 4762_1.htm
Marsh Posté le 20-06-2007 à 19:39:27
Merci pour vos commentaires, mais il doit y avoir un autre problème bien précis, car l'image ne s'affiche jamais, quel que soit le script utilisé...
dnlilas a écrit : Cryptograph nécessite le support dans php de GD et Freetype. Vérifier avec phpinfo() ce support. |
Vérifié supporté et actif...
NewsletTux a écrit : Salut, |
Merci, mais à part me donner d'autres scripts de Captcha (dont certains que j'ai essayé cet après-midi), ça ne me dit pas où je me gourre...
Ca m'énerve tellement que je viens de détruire mon fauteuil, à force de taper dessus de rage.
Rassurez-vous il n'a pas une grande valeur...
Bon... Avançons...
Je viens de pointer mon navigateur vers le dossier "crypt" du script, et ça fonctionne très bien :
Alors pourquoi l'image s'affiche pas quand je l'intègre dans ma page...?
C'est dingue ça !
Marsh Posté le 20-06-2007 à 19:56:52
La seule différence entre mon intégration et le index.php du dossier "crypt" (capture ci-dessus),
c'est que j'intègre le code dans le template add_message.htm d'AlexGBook (voir code ci-dessus), qui est un .html...
Ca viendrait pas de ça ???
Le problème, c'est que je vois parfaitement où placer le code dans le template add_message.htm d'AlexGBook,
mais pas du tout où le placer dans le index.php d'AlexGBook...
Pour la procédure de vérification, pas de problème, je pense que ce sera dans le add_message.php d'AlexGBook,
qui contient déjà des codes de vérification. Mais nous n'en sommes pas là...
Je me rends compte que j'ai oublié d'indiquer l'adresse du site d'AlexPHPTeam : http://www.alexguestbook.net/.
Dans la partie "Support", il est dit :
Citation : Vous avez installé Cryptographp mais ca ne marche pas ? |
Je crois que c'est clair, il faut que j'intègre le code dans le index.php (celui-là ou un autre ?), et pas dans le template html...
Mais où...??????
Le fichier index.php :
Citation : <?php |
Quelqu'un peut m'aider...??? S'il vous plaît ?
Marsh Posté le 21-06-2007 à 03:03:56
Ben, euh, je te conseillerais bien plutôt de mettre à jour ta mini-messagerie, les nouvelles versions intégrant un captcha
Marsh Posté le 21-06-2007 à 08:52:23
Ha 'ué...?
Merdouille... Ca m'arrange pas...
J'avais supprimé et modifié pas mal de trucs à la mano, pour arriver à une version hyper minimaliste parfaitement intégrée à mon site...
Mais bon, je recommencerai à partir de la dernière version si jamais je ne trouve pas la solution à mon problème. Merci pour l'info que je n'avais pas remarqué.
Mais j'aimerai quand même comprendre mon problème actuel, pour des raisons pratiques (motif ci-dessus), et pour mes connaissances personnelles (je déteste abandonner parce que je n'aurais pas compris)...
Ce que je ne comprends pas :
Suivant toute logique, le code PHP se doit d'être intégré dans une page PHP, et pas dans une page HTML...
Mais alors, en dehors de l'image qui ne s'affiche pas, pourquoi une partie du code PHP (texte + case où entrer le code Captcha) est-il quand même traité quand je l'insère dans le template HTML ?
Le template HTML ne serait-il pas traité comme du HTML, mais comme une "extension" à la page PHP qui y fait appel ???
Si on pouvait m'expliquer un ou deux trucs là-dessus, ça m'aiderait beaucoup...
Marsh Posté le 21-06-2007 à 18:08:52
Quelqu'un connait-il bien Firefox...?
Car je viens de m'apercevoir d'un truc : lorsque j'affiche le code source de la page, il y a 2 ou 3 lignes de code (comme par hasard, parmis celles que j'ai ajouté) qui s'affichent en rose...!
Cette couleur rose signifie quoi ???
Le code de add_message.htm :
Citation : <?php |
En noir : le code d'origine
En rouge : le code ajouté (antispam Captcha)
En rose : le code ajouté (antispam Captcha) affiché en rose dans Firefox dans l'affichage du code source de la page
Merci à ceux qui voudront bien se pencher sur mon problème, qui, je pense, pourrait servir à pas mal de monde...
Marsh Posté le 21-06-2007 à 18:15:44
PHP n'interprête pas les pages en .htm, .html
Tu devrais le savoir ca.
Dès le moment où tu utilise du PHP, tu dois renommer ta page en .php.
Marsh Posté le 21-06-2007 à 19:56:41
Merci.
Et non je ne devrais pas le savoir, je ne sais pas programmer... Juste bidouiller...
En l'occurence, je pensais que dans le cas présent, le template n'était qu'une "extension" du PHP qui l'appelle, un peu comme si on pouvait le nommer n'importe comment, le contenu étant pris comme du PHP (je trouvais que ça collait bien, car même dans le HTML, une partie du code PHP -la case où saisir le code du Captcha- était correctement traitée).
Mais ce n'est pas le cas.
Il faut donc intégrer le code dans le index.php et le add_message.php de la messagerie. OK.
Pour la première partie du code à intégrer :
Citation : <?php |
Je viens d'intégrer les 2 lignes du milieu, au début d'index.php, qui commençait déjà par "<?php".
Pour la deuxième partie du code (sert à afficher l'image du Captcha) :
Citation : <?php dsp_crypt(0,1); ?> |
Là, je n'ai vraiment aucune idée de l'endroit où insérer ce code...
Tous mes essais se sont soldés par des erreurs.
Vous trouverez le contenu d'index.php dans un post précédent, si vous voulez jeter un oeil...
Pour le code de vérification, ce sera dans add_message.php, qui contient déjà d'autres instructions de vérification. Mais nous n'en sommes pas là.
Marsh Posté le 22-06-2007 à 14:36:02
Ummo, toi, ici ?
Les aliens vont abducter ta bdd pardi
Sérieusement
1) tu fais un tableau de chiffre lettres+trucs dégueux, tu en fais une chaine, tu la passe en session
2) tu construit une image à partir de la glib et là .. tu dois avoir en postdata le résultat de cette variable de session, voilà
3) Ca élimine tout le spam possible : démo ici -> http://www.bens-world.org/forum/po [...] topic&f=16
( les méthodes artisanales intéressent moins les "référenceurs" )
Marsh Posté le 24-06-2007 à 21:08:03
Personne pour me donner ne serait-ce qu'un petit conseil...?
Marsh Posté le 13-07-2007 à 16:14:37
Ouh du code Modelixe, je croyais que c'était mort ce truc ..
Marsh Posté le 18-06-2007 à 19:59:46
Bonjour à tous !
J'aimerais installer un système antispam sur la mini-messagerie de mon site internet perso (Free.fr), car je suis victime de robots spameurs...
Mon site est un site exclusivement perso, référencé nul part, qui n'est utilisé que par moi, ainsi que par quelques amis. Je ne suis pas développeur, mais j'aime bidouiller. Vous pouvez en avoir un aperçu en jettant un oeil sur la capture d'écran qui suit :
Malheureusement, j'ai des difficultés à intégrer les systèmes antispam type "Captcha" sur la mini-messagerie.
(J'en ai essayé plusieurs)
HELP !
Bon, commençons par le début.
Ma messagerie est une version bidouillée/simplifiée d'@lex Guestbook, d'Alexphpteam, et j'ai choisi Cryptographp comme antispam.
Si je suis la procédure décrite sur le site de Cryptographp v1.4 :
- Je commence par uploader le script Captcha dans un dossier "crypt" à la racine de mon site web. J'ajoute aussi un "modele de cryptogrammes" (j'ai choisi BlueSky) dans le dossier "crypt".
- Je place le code requis qui suit, en tout début de la page qui contiendra le cryptogramme :
<?php
$cryptinstall="./crypt/cryptographp.fct.php";
include $cryptinstall;
?>
La page "qui contiendra le cryptogramme" doit être add_message.htm, située dans les templates d'@lex Guestbook.
- Pour afficher le cryptogramme du Captcha, je copie le code suivant dans la même page, à l'endroit où je désire l'affichage :
<?php dsp_crypt(0,1); ?>
- Pour afficher le formulaire de saisie du Captcha, je copie le code suivant dans la même page, à l'endroit où je désire l'affichage :
Recopier le code : <input type="text" name="code">
La procédure suivante est l'insertion du code de vérification, mais voyons avant ce que donne le travail effectué précédemment... Histoire de...
Le code complet (en rouge, les ajouts précédents) de add_message.htm :
<?php
$cryptinstall="./crypt/cryptographp.fct.php";
include $cryptinstall;
?>
<div align="center">
<center>
<table border="0" width="90%" cellspacing="0">
<FORM NAME="ajouter" METHOD="post" ACTION="<mx:text id="action_url"/>" onsubmit="javascript:return verif_add();">
<tr>
<td width="100%" class="row_bleu">
<table border="0" width="100%" cellspacing="0" cellpadding="5">
<tr>
<td width="100%" class="row_gris">
<table border="0" width="100%" cellspacing="0" cellpadding="0">
</tr>
<tr>
<td width="100%" height="20" align="center"><mx:text id="nom_pseudo_visiteur"/></td></tr>
<tr>
<td width="100%" height="30" align="center">
<p><input type="text" name="nom" size="20" maxlength="20"></p></td></tr>
<mx:bloc id="bloc_email">
<tr>
<td width="35%" height="30"><mx:text id="email_visiteur"/></td>
<td width="65%" height="30"><input type="text" name="email" size="34" maxlength="150"></td>
</tr>
</mx:bloc id="bloc_email">
<mx:bloc id="bloc_site">
<tr>
<td width="35%" height="30"><mx:text id="site_web_visiteur"/></td>
<td width="65%" height="30"><input type="text" name="site" size="34" maxlength="150"></td>
</tr>
</mx:bloc id="bloc_site">
<mx:bloc id="bloc_pays">
<tr>
<td width="35%" height="30"><mx:text id="ville_pays_visiteur"/></td>
<td width="65%" height="30"><input type="text" name="ville_pays" size="34" maxlength="60"></td>
</tr>
</mx:bloc id="bloc_pays">
<mx:bloc id="bloc_note">
<tr>
<td width="35%" height="30"><mx:text id="note_visiteur"/></td>
<td width="65%" height="30">
<p><select size="1" name="note_site">
<option value="" selected>-</option>
<option value="10">10<mx:text id="note_super"/></option>
<option value="9">9</option>
<option value="8">8</option>
<option value="7">7</option>
<option value="6">6</option>
<option value="5">5<mx:text id="note_moyen"/></option>
<option value="4">4</option>
<option value="3">3</option>
<option value="2">2</option>
<option value="1">1</option>
<option value="0">0<mx:text id="note_rate"/></option>
</select></p>
</td>
</mx:bloc id="bloc_note">
</tr>
<tr>
<td width="100%" colspan="2" height="26">
<p align="center"><mx:text id="message_visiteur"/></p></td>
</tr>
<tr>
<td width="100%" colspan="2">
<p align="center"><mx:text id="chaine_smileys"/></p></td>
</tr>
<tr>
<td width="100%" colspan="2">
<p align="center"><mx:formField id="message_textarea" rows="10" cols="20"/></p>
</td>
</tr>
<tr>
<td width="100%" colspan="2" height="40">
<p align="center"><?php dsp_crypt(0,1); ?><br></p>
</td>
</tr>
<tr>
<td width="100%" colspan="2" height="40">
Recopier le code : <input type="text" name="code"><br></p>
</td>
</tr>
<tr>
<td width="100%" colspan="2" height="40">
<p align="center"><input type="submit" value="<mx:text id="ajouter_message_visiteur"/>" name="ajouter"><br></p>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</FORM>
</table>
</center>
</div>
Le résultat :
Aïe...
Commence mal... 2 problèmes :
- Pourquoi l'image du Captcha ne s'affiche-t-elle pas ???
- Pourquoi ce n'est pas centré ? (Problème secondaire)
Avant d'aller plus loin, et d'insérer le code de vérification, on va déjà régler le problème de l'image qui ne s'affiche pas...
Merci à ceux qui voudront bien m'aider, je suis tout ouïe.
Message édité par Profil supprimé le 18-06-2007 à 20:06:34