jQuery
En savoir plus
Adobe Flex & Flash
En savoir plus
ASP.NET
En savoir plus

Le problème de ce sujet a été résolu
Offre d'emploi : Développeur Web PHP/Drupal (H/F)
| Page 1 | |
| Auteur | Message |
|---|---|
| 1 visiteur sur ce sujet (1 Anonyme) | |
| Page 1 | |
Oliver123
|
# Posté le 08/02/2012 à 08:15:48 |
|
|
Bonjour, j'ai fait un captcha ( image ), en suivant le tuto sdz, en local tout fonctionnait bien, mais une fois sur le serveur de l'hébergeur, cela ne fonctionne plus.
Il semble que le pb vienne des autorisations ( chmod ), j'ai donc essayé de les modifier, pour les passer à 777, mais là, le site ne s'affiche plus du tout, et l'hébergeur m'envoie une page avec un message d'erreur ( pour les tests, j'ai fait plusieurs changements qui passaient, seul le 777 bloque ). L'état actuel est le suivant : -le répertoire 'public_html' de l'hébergeur est à 750 ( par défaut ), -mon fichier 'captcha.php' était à 644, je l'ai passé à 744, -mon fichier 'inscription.php' était à 644, je l'ai également passé à 744. Faut-il donc que je passe certains éléments à 777, lesquels ? Si oui, comment annuler le blocage de l'hébergeur ( m'empêchant actuellement de mettre 777 aux éléments ci-dessus mentionnés ? Merci d'avance pour votre aide, Olivier. |
| Publicité | # Posté le 08/02/2012 à 08:15:48 |
|
|
|
keke
|
# Posté le 08/02/2012 à 08:22:57 |
|
membre du projet Magdales
Ville : Verrières le buisson |
Bonjour Olivier,
Premier constat ... essaye de faire en sorte que ton environnement de Dev ressemble au plus près à ton environnement de prod : même config, même OS, même serveur web avec la même version. Tu verras qu'à la longue, c'est un bon reflexe, et ça t'évite de faire un dev que tu ne pourras finalement pas déployer sur ton hébergeur. Pour ton problème, est-ce que la rège du 777 est aussi contraignante au niveau des sous répertoires ? Si ce n'est pas le cas, une solution de contournement consiste à créer un sous répertoire dans lequel tu gères ton Captcha. Mais dans le fond, je ne vois pas en quoi ton captcha a besoin de droit particulier ... Pourrais-tu fournir ton code ? Y'a peut-être une entête qui ne marche plus sur ta prod, mais qui fonctionne en locale car ton serveur local est plus permissif ? kéké Si vous voulez m'aider, je chercher à référencer mon jeu. Il s'agit d'un jeu accessible aux mal et non-voyants, sourds et mal-entandants. Le jeu est gratuit, bon enfant, de type MMORPG. URL disponible dans mon profil. Voir > la demande de référencement Voir > Le projet Magdales.com décrit sur le site du zéro |
Oliver123
|
# Posté le 08/02/2012 à 10:12:11 |
|
|
Bonjour keke,
Merci pour tes conseils, je te joint le code du captcha, le début de la page d'inscription et son formulaire appelant le captcha : ---CAPTCHA -------------- <?php /* Neoterranos & LkY Page captcha.php Génère un captcha. Quelques indications : (utiliser l'outil de recherche et rechercher les mentions données) Liste des fonctions : -------------------------- Aucune fonction -------------------------- Liste des informations/erreurs : -------------------------- Aucune information/erreur -------------------------- */ session_start(); header ("Content-type: image/png"); $image = imagecreate(320, 100); $blanc = imagecolorallocate($image, 255, 255, 255); $noir = imagecolorallocate($image, 0, 0, 0); $gris = imagecolorallocate($image, 200,200,200); $jaune = imagecolorallocate($image, 255, 255, 0); $rouge = imagecolorallocate($image, 200, 39, 45); $vert = imagecolorallocate($image, 45, 255, 39); $cyan = imagecolorallocate($image, 0, 255, 255); $magenta = imagecolorallocate($image, 200, 0, 200); $orange = imagecolorallocate($image, 255, 160, 0); $bleu = imagecolorallocate($image, 60, 75, 200); $bleuclair = imagecolorallocate($image, 156, 227, 254); $vertf = imagecolorallocate($image, 20, 140, 17); /*$Anoir = imagecolorallocatealpha($image, 0, 0, 0, 80); $Ajaune = imagecolorallocatealpha($image, 255, 255, 0, 80); $Ablanc = imagecolorallocatealpha($image, 255, 255, 255, 80); $Arouge = imagecolorallocatealpha($image, 200, 39, 45, 80); $Avert = imagecolorallocatealpha($image, 45, 200, 39, 80); $Acyan = imagecolorallocatealpha($image, 0, 255, 255, 80); $Amagenta = imagecolorallocatealpha($image, 255, 0, 255, 80); $Aorange = imagecolorallocatealpha($image, 255, 128, 0, 80); $Ableu = imagecolorallocatealpha($image, 39, 45, 200, 80); $Ableuclair = imagecolorallocatealpha($image, 156, 227, 254, 80); $A2noir = imagecolorallocatealpha($image, 0, 0, 0, 25); $A2jaune = imagecolorallocatealpha($image, 255, 255, 0, 25); $A2blanc = imagecolorallocatealpha($image, 255, 255, 255, 25); $A2rouge = imagecolorallocatealpha($image, 200, 39, 45, 25); $A2vert = imagecolorallocatealpha($image, 45, 200, 39, 25); $A2cyan = imagecolorallocatealpha($image, 0, 255, 255, 25); $A2magenta = imagecolorallocatealpha($image, 255, 0, 255, 25); $A2orange = imagecolorallocatealpha($image, 255, 128, 0, 25); $A2bleu = imagecolorallocatealpha($image, 39, 45, 200, 25); $A2bleuclair = imagecolorallocatealpha($image, 156, 227, 254, 25);*/ //Toutes les couleurs $colors = Array($vert, $noir, $jaune, $blanc, $rouge, $cyan, $magenta, $orange, $bleu, $bleuclair, $gris, $vertf); $Tcolors = count($colors); /*$colors2 = Array($Avert, $Anoir, $Ajaune, $Ablanc, $Arouge, $Acyan, $Amagenta, $Aorange, $Ableu, $Ableuclair); $Tcolors2 = count($colors2); $colors3 = Array($A2vert, $A2noir, $A2jaune, $A2blanc, $A2rouge, $A2cyan, $A2magenta, $A2orange, $A2bleu, $A2bleuclair); $Tcolors3 = count($colors3);*/ //couleurs autorisées pour les caractères $Lcolors = Array($noir, $rouge, $magenta, $bleu, $vertf); $TLcolors = count($Lcolors); $polices = Array('VOLDU'); //Pensez à en rajouter !! $Tpolices = count($polices); //définition des caractères autorisés. $carac = 'ABCDEFGHIJKLMNOPRSTUVWXYZ'; $Tcarac = strlen($carac); //définition des lignes noires $nb_lignes = mt_rand(3,7); $i = 1; while($i<=$nb_lignes) { ImageLine($image, mt_rand(0,40), mt_rand(0,100), mt_rand(280, 320), mt_rand(0,100), $noir); $i++; } //définition des lignes colorées. $nb_lignes = mt_rand(3,7); $i = 1; while($i<=$nb_lignes) { ImageLine($image, mt_rand(0,40), mt_rand(0,100), mt_rand(280,320), mt_rand(0,100), $colors[mt_rand(0,$Tcolors-1)]); $i++; } //définition des ellipses $nb_ellipses = mt_rand(1,6); $i = 1; while($i<= $nb_ellipses) { ImageEllipse($image, mt_rand(0,320), mt_rand(0,100), 25+mt_rand(0,15), 25+mt_rand(0,15), $colors[mt_rand(0,$Tcolors-1)]); $i++; } //définition des triangles $nb_triangles = mt_rand(1,6); $i = 1; while($i<=$nb_triangles) { $array = Array(mt_rand(0,300), mt_rand(0,100), mt_rand(0,300), mt_rand(0,100), mt_rand(0,300), mt_rand(0,100)); ImagePolygon($image, $array, 3, $colors[mt_rand(0,$Tcolors-1)]); $i++; } $aupifcolor = $Lcolors[mt_rand(0,$TLcolors-1)]; //la couleur des caractères $ecart = 300/10+4; //écart entre les caractères $_SESSION['captcha'] = ''; //La voilà !! Enfin !! ************************************************************ $i = 0; while($i <= 7) { $lettre = $carac[mt_rand(0, $Tcarac-1)]; //choix de lettre $_SESSION['captcha'] .= $lettre; //stockage **************************************************** $_SESSION CAPTCHA est le choix des lettres aléatoire **** $taille = mt_rand(35,45); //taille $angle = mt_rand(-35,35); //angle $y = mt_rand(55, 60); //ordonnée $police = $polices[mt_rand(0, $Tpolices-1)]; //police ![]() imagettftext($image, $taille, $angle, $ecart*$i+15, $y, $aupifcolor, 'polices/'.$police.'.ttf', $lettre); $i++; } imagejpeg($image); //On envoie et on prie ![]() ?> --- PAGE INSCRIPTION --------------------- <?php // on demarre les sessions session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <!-- DW6 --> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Untitled Document</title> <link rel="stylesheet" href="3col_leftNav.css" type="text/css"> <style type="text/css"> <!-- .Style1 { font-size: large; font-weight: bold; color: #5F4EF9; } .Style2 { color: #7562F9; font-weight: bold; } .Style7 {font-size: 100%} .Style8 {color: #482EFF} .Style9 {color: #4930FE} .Style10 {color: #00FF66} .Style11 {color: #442BF8} .Style12 {color: #000099} .Style13 {color: #000099; font-weight: bold; } .Style14 {color: #00CCFF} --> </style> <script language="JavaScript" type="text/JavaScript"> <!-- function MM_reloadPage(init) { //reloads the window if Nav4 resized if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) { document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }} else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload(); } MM_reloadPage(true); //--> </script> </head> <body> ... ... ... <!-- formulaire d'inscription --> <form action="celebrissim_inscription_membres.php" method="post" enctype="multipart/form-data"> Login : <br /><input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br /> <br /> Mot de passe : <br /><input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br /> Confirmation du mot de passe : <br /><input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br /> <!-- envoi photo_membre --> <br /> Votre avatar (facultatif) :<br /><input type="file" name="photo_membre" /><br /> <!-- email --> <br /> Votre email : <br /><input type="text" name="email_inscription" ><br /> Merci de confirmer votre email : <br /><input type="text" name="email_inscription_confirm" ><br /> <!-- CAPTCHA --> <br /> <label for="captcha" class="float">Entrez les 8 caractères (majuscules ou chiffres) contenus dans l'image :<br /></label> <input type="text" name="captcha" id="captcha"><br/> <br /><img src="captcha.php" /> <!-- FIN CAPTCHA --> <br /> <br /> <input type="submit" name="inscription" value="Inscription"> </form> <?php if (isset($erreur)) { echo '<br />',$erreur; } ?> </body> </html> ---------------------------------------- Pour préciser, en fin de formulaire, le logo gris indiquant qu'une image est manquante s'affiche à la place du captcha. A+, Olivier. |
Gnomino
|
# Posté le 08/02/2012 à 11:47:52 |
Oups, j'ai gaffé ...![]()
|
Es-tu sûr que la librairie GD est activée ?
Gnomino, gaffeur, sabotteur de scripts ![]() Gagnez du temps grâce à mon générateur de classes PHP ![]() Cadeau pour les robots spammeurs. |
keke
|
# Posté le 08/02/2012 à 12:10:00 |
|
membre du projet Magdales
Ville : Verrières le buisson |
Recoucou Olivier ^^,
Je vais parler dans le vent, car je ne dispose pas d'environnement aproprié sous la main. C'est donc plus une méthode qu'une solution technique. Je pense qu'il y a une erreur dans ta page captcha.php Pour t'en assurer, je ferais bien un test : - commente les lignes propre à l'affichage en Image : // header ("Content-type: image/png"); et // imagejpeg($image); //On envoie et on prie - lorsque c'est commenté, sauvegarde ton fichier puis ouvre le via un navigateur. Ca t'affichera les messages d'erreurs que tu pourras alors corriger. Cette méthode est plustôt efficace au début, car pour les images, on a l'impression de travailler en aveugle. Quand tu auras corrigés les coquilles, décommente les lignes en trop et test. Kéké PS : et gnomino a peut-être indiqué la bonne solution. Si vous voulez m'aider, je chercher à référencer mon jeu. Il s'agit d'un jeu accessible aux mal et non-voyants, sourds et mal-entandants. Le jeu est gratuit, bon enfant, de type MMORPG. URL disponible dans mon profil. Voir > la demande de référencement Voir > Le projet Magdales.com décrit sur le site du zéro |
Michoko
|
# Posté le 08/02/2012 à 12:43:00 |
|
Ville : Vierzon |
ce qui pourrait aider aussi c'est que tu nous dise chez quelle hébergeur tu ai. Par exemple si tu est chez ovh, je crois qu'il bloque le 777 et on doit le remplacer par un 755 de souvenir.
![]() |
Oliver123
|
# Posté le 08/02/2012 à 17:17:22 |
|
|
Bonsoir à tous,
Merci pour vos commentaires, Pour ce qui est de la librairie GD, je l'ai vérifiée hier, elle est bien activée, en voici les détails : ------------------------------------------- gd GD Support enabled GD Version bundled (2.0.34 compatible) FreeType Support enabled FreeType Linkage with freetype FreeType Version 2.2.1 GIF Read Support enabled GIF Create Support enabled JPEG Support enabled libJPEG Version 6b PNG Support enabled libPNG Version 1.2.10 WBMP Support enabled XPM Support enabled XBM Support enabled -------------------------------------------- Pour ce qui est de mon hébergeur, il s'agit de Hostpapa, je leur ai demandé et ils viennent de m'indiquer que leurs permissions maximales sont 755, donc pas de 777 possible. Pour la méthode que tu me proposes Kéké, il est un peu tard ce soir, donc je l'essaierai demain matin. Cependant pour être sûr de bien te comprendre, quand tu parles de 'commente les lignes ...', il s'agit bien de mettre les symboles '//' devant les lignes ? Je dois aussi préciser qu'il y a dans le code que j'ai fourni une différence entre header ("Content-type: image/png"); où il est question de .png et imagejpeg($image); où il est question de .jpeg, mais ceci est dû à divers tests que j'ai fait, au début la dernière ligne était imagepng($image);, mais cela ne marchait pas plus ... Merci de continuer à m'aider, A+, Olivier. |
keke
|
# Posté le 09/02/2012 à 08:37:49 |
|
membre du projet Magdales
Ville : Verrières le buisson |
Oui, Commente signifie mettre des symboles '//' devant les lignes.
Cela à pour effet que le serveur ignore ce qui a été marqué juste après ces symboles. Ainsi, tu conserves le code et tu peux le décommenter rapidement ensuite. Bon courage à toi. Kéké PS : j'avais pas tiqué pour le jpeg vs png ... mais cela te poseras assurément un problème par la suite. A toi de voir quel image conserver (et je t'encourage à utilise png, ne serait-ce que pour les effets de transparence) Si vous voulez m'aider, je chercher à référencer mon jeu. Il s'agit d'un jeu accessible aux mal et non-voyants, sourds et mal-entandants. Le jeu est gratuit, bon enfant, de type MMORPG. URL disponible dans mon profil. Voir > la demande de référencement Voir > Le projet Magdales.com décrit sur le site du zéro |
Oliver123
|
# Posté le 10/02/2012 à 15:40:09 |
|
|
Bonjour Kéké, j'ai commenté les 2 lignes que tu as mentionnées, cela a eu pour effet de ne plus afficher le captcha, mais cela n'a introduit aucun message d'erreur ( j'avais remis le imagepng($image); ).
Donc aucune piste... A+, Olivier.
|
keke
|
# Posté le 13/02/2012 à 08:50:03 |
|
membre du projet Magdales
Ville : Verrières le buisson |
Hum, je me suis peut-être mal exprimé. Je ré-itère :
Pour t'en assurer, je ferais bien un test : - commente les lignes propre à l'affichage en Image : // header ("Content-type: image/png"); et // imagejpeg($image); //On envoie et on prie - lorsque c'est commenté, sauvegarde ton fichier puis ouvre le fichier 'captcha.php' . Ca t'affichera les messages d'erreurs que tu pourras alors corriger. C'est plus compréhensible ? Il faut ouvrir le fichier qui génère l'image. kéké Si vous voulez m'aider, je chercher à référencer mon jeu. Il s'agit d'un jeu accessible aux mal et non-voyants, sourds et mal-entandants. Le jeu est gratuit, bon enfant, de type MMORPG. URL disponible dans mon profil. Voir > la demande de référencement Voir > Le projet Magdales.com décrit sur le site du zéro |
Oliver123
|
# Posté le 25/02/2012 à 13:20:41 |
|
|
Bonjour Kéké, je répond un peu tard, mais j'étais absent durant les quelques temps.
Je viens de faire ( après avoir enfin compris ) ce que tu m'as indiqué, et .... super j'ai bien 8 messages d'erreurs ( il y a 8 lettres dans mon captcha ), 8 fois le même, le voici :Warning: imagettftext() [function.imagettftext]: Could not find/open font in /home/celeb408/public_html/captcha.php on line 134 Il semble donc qu'il y ai bien un pb avec la police... ... je viens te bidouiller un peu tout ça, et enfin ça marche. Le pb venait simplement d'une variable contenant la police, alors que cela marchait en local ??? En tout cas, sans vos conseils, j'en aurai pas fini Merci beaucoup, A+, Olivier. |
keke
|
# Posté le 27/02/2012 à 08:38:06 |
|
membre du projet Magdales
Ville : Verrières le buisson |
Super
![]() Bien content que ça t'ai aidé. Cette méthode est très peu expliquée sur le Net ... il m'en a fallut du temps avant de comprendre. je suis bien content que tu ai réussi. N'hésites pas toi aussi à la ré-expliquer à quelqu'un ^^. kéké Si vous voulez m'aider, je chercher à référencer mon jeu. Il s'agit d'un jeu accessible aux mal et non-voyants, sourds et mal-entandants. Le jeu est gratuit, bon enfant, de type MMORPG. URL disponible dans mon profil. Voir > la demande de référencement Voir > Le projet Magdales.com décrit sur le site du zéro |
Retour au forum "PHP" ou à la liste des forums
