Bonjour,
Je cherche a mettre en place recaptcha sur la page de contact de mon site web.
Mais je n'arrive pas a comprendre pourquoi cela ne fonctionne pas.
J'ai refait une page de formulaire toute propre pour tester qu'avec cette fonction, je ne vois toujours pas.
Les exemples que je trouve on l'air similaire mais je n'ai ni message d'erreur, ni rien vu de désactive en rapport dans mon phpinfo().
$requestURL si on l'ouvre depuis un navigateur affiche bien "success" true/false en fonction
json_decode($reponse, true) a l'air lui de ne rien retourné
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66 <?php $nom = null; $courriel = null; $message = null; $captcha = null; $requestURL = null; $reponse = null; $status = null; if(isset($_POST['submitted'])) { $nom = $_POST['nom']; $courriel = $_POST['courriel']; $message = $_POST['message']; $captcha = $_POST['g-recaptcha-response']; $remoteip = $_SERVER['REMOTE_ADDR']; $secret = macléprivé; $requestURL = 'https://www.google.com/recaptcha/api/siteverify?secret='.$secret.'&response='.$captcha.'&remoteip='.$remoteip; $curl = curl_init($requestURL); curl_setopt($curl, CURLOPT_HEADER, false); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_TIMEOUT, 1); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); $response = curl_exec($curl); $status= json_decode($reponse, true); if($status['success']) { $status="reCAPTCHA ok"; } else { $status="Please re-enter your reCAPTCHA."; } } ?> <p><?php echo $nom.' -- ';echo $courriel.' --- '; echo $message.'</br></br>'; echo $captcha.'</br></br>'; echo $requestURL.'</br></br>'; echo $reponse.'</br></br>'; echo $status.'</br></br>'; ?> <form action="recaptcha2.php" method="post"> <div> <label for="nom">Nom :</label> <input type="text" id="nom" name="nom" value ="nom"/> </div> <div> <label for="courriel">Courriel :</label> <input type="email" id="courriel" name="courriel" value ="mail@domaine.com" /> </div> <div> <label for="message">Message :</label> <textarea id="message" name="message">message</textarea> <div class="g-recaptcha" data-sitekey="maclépublique"></div> <script type="text/javascript" src="https://www.google.com/recaptcha/api.js?hl=fr"></script> <div class="button"> <input type="hidden" name="submitted" id="submitted" value="true" /> <button type="submit">Envoyer votre message</button> </div> </div> </form>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 curl cURL support enabled cURL Information 7.36.0 AsynchDNS Yes SSL Yes TLS-SRP Yes Protocols dict, file, ftp, ftps, gopher, http, https, imap, imaps, ldap, pop3, pop3s, rtsp, scp, sftp, smtp, smtps, telnet, tftp Host armle-unknown-linux-gnu SSL Version OpenSSL/1.0.1k ZLib Version 1.2.8 libSSH Version libssh2/1.4.3
Partager