Ik krijg geen response na het verzenden mail met reCaptcha V3

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Technisch Ontwerper / Applicatie Ontwikkelaar

Technisch Ontwerper / Applicatie Ontwikkelaar Actief Wat ga je doen? Als Technisch Ontwerper / Applicatie Ontwikkelaar kom je te werken bij onze gerenommeerde klanten op projecten of opdrachten van omvang en formaat. Je bent verantwoordelijk voor het omzetten van functionele specificaties naar een technisch ontwerp, het ontwerp van programmaspecificaties voor toepassingen, de realisatie van (gewijzigde) programmaonderdelen en databestanden van toepassingen en de technische systeemtest van applicatietoepassingen. Daarnaast geef je vorm aan webpagina’s en applicaties, stel je gebruikersdocumentatie op en verleen je ondersteuning bij het oplossen van productiefouten. Tevens ben je verantwoordelijk voor het samenstellen en onderhouden van de applicatie c.q.

Bekijk vacature »

Senior DevOps-ontwikkelaar eIDAS

Functie­omschrijving Burgers en bedrijven veilig en betrouwbaar digitaal toegang geven tot diensten en producten van het ministerie van Economische Zaken en Klimaat. Als senior DevOps-ontwikkelaar bouw je daar letterlijk aan mee. En dat doe je bij DICTU: een van de grootste en meest vooruitstrevende ICT-dienstverleners van de Rijksoverheid. Jij werkt mee aan de doorontwikkeling van eIDAS, dat staat voor Electronic IDentification Authentication and trust Services. Deze koppeling maakt de grensoverschrijdende authenticatie op overheidswebsites binnen de Europese Unie mogelijk. Het ministerie van Economische Zaken en Klimaat heeft één moderne toegangspoort voor zijn diensten en inspecties. Enkele daarvan zijn dankzij eIDAS inmiddels

Bekijk vacature »

Technisch Ontwerper / Applicatie Ontwikkelaar

Technisch Ontwerper / Applicatie Ontwikkelaar Actief Wat ga je doen? Als Technisch Ontwerper / Applicatie Ontwikkelaar kom je te werken bij onze gerenommeerde klanten op projecten of opdrachten van omvang en formaat. Je bent verantwoordelijk voor het omzetten van functionele specificaties naar een technisch ontwerp, het ontwerp van programmaspecificaties voor toepassingen, de realisatie van (gewijzigde) programmaonderdelen en databestanden van toepassingen en de technische systeemtest van applicatietoepassingen. Daarnaast geef je vorm aan webpagina’s en applicaties, stel je gebruikersdocumentatie op en verleen je ondersteuning bij het oplossen van productiefouten. Tevens ben je verantwoordelijk voor het samenstellen en onderhouden van de applicatie c.q.

Bekijk vacature »

Technisch Ontwerper / Applicatie Ontwikkelaar

Technisch Ontwerper / Applicatie Ontwikkelaar Actief Wat ga je doen? Als Technisch Ontwerper / Applicatie Ontwikkelaar kom je te werken bij onze gerenommeerde klanten op projecten of opdrachten van omvang en formaat. Je bent verantwoordelijk voor het omzetten van functionele specificaties naar een technisch ontwerp, het ontwerp van programmaspecificaties voor toepassingen, de realisatie van (gewijzigde) programmaonderdelen en databestanden van toepassingen en de technische systeemtest van applicatietoepassingen. Daarnaast geef je vorm aan webpagina’s en applicaties, stel je gebruikersdocumentatie op en verleen je ondersteuning bij het oplossen van productiefouten. Tevens ben je verantwoordelijk voor het samenstellen en onderhouden van de applicatie c.q.

Bekijk vacature »

Technisch Ontwerper / Applicatie Ontwikkelaar

Technisch Ontwerper / Applicatie Ontwikkelaar Actief Wat ga je doen? Als Technisch Ontwerper / Applicatie Ontwikkelaar kom je te werken bij onze gerenommeerde klanten op projecten of opdrachten van omvang en formaat. Je bent verantwoordelijk voor het omzetten van functionele specificaties naar een technisch ontwerp, het ontwerp van programmaspecificaties voor toepassingen, de realisatie van (gewijzigde) programmaonderdelen en databestanden van toepassingen en de technische systeemtest van applicatietoepassingen. Daarnaast geef je vorm aan webpagina’s en applicaties, stel je gebruikersdocumentatie op en verleen je ondersteuning bij het oplossen van productiefouten. Tevens ben je verantwoordelijk voor het samenstellen en onderhouden van de applicatie c.q.

Bekijk vacature »

Technisch Ontwerper / Applicatie Ontwikkelaar

Technisch Ontwerper / Applicatie Ontwikkelaar Actief Wat ga je doen? Als Technisch Ontwerper / Applicatie Ontwikkelaar kom je te werken bij onze gerenommeerde klanten op projecten of opdrachten van omvang en formaat. Je bent verantwoordelijk voor het omzetten van functionele specificaties naar een technisch ontwerp, het ontwerp van programmaspecificaties voor toepassingen, de realisatie van (gewijzigde) programmaonderdelen en databestanden van toepassingen en de technische systeemtest van applicatietoepassingen. Daarnaast geef je vorm aan webpagina’s en applicaties, stel je gebruikersdocumentatie op en verleen je ondersteuning bij het oplossen van productiefouten. Tevens ben je verantwoordelijk voor het samenstellen en onderhouden van de applicatie c.q.

Bekijk vacature »

Edwin Sabel

Edwin Sabel

22/03/2020 16:29:35
Quote Anchor link
Ik weet niet wat ik fout doe, als ik een mail verstuur krijg ik wel de mail binnen maar geen melding. Hetzelfde type script gebruik ik voor een terugbelverzoek en deze werkt wel. (is een kleinere versie).
Wie kan mij op weg helpen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
67
68
69
<?php
define( "RECAPTCHA_V3_SECRET_KEY", 'XXXXXXXXXXXXXXXXXXXXXXXXXxxxxxxxxxx' );

if ( isset( $_POST[ 'email' ] ) && $_POST[ 'email' ] ) {
  $email = filter_var( $_POST[ 'email' ], FILTER_SANITIZE_STRING );
}
else {
  // set error message and redirect back to form...
  // echo "<script> alert('Je bericht kon niet worden verzonden.')</script>";

  exit;
}


    $token = $_POST[ 'token' ];
    $action = $_POST[ 'action' ];
// Sender's Name
    $name = $_POST[ "name" ];

// call curl to POST request
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, "https://www.google.com/recaptcha/api/siteverify" );
curl_setopt( $ch, CURLOPT_POST, 1 );
curl_setopt( $ch, CURLOPT_POSTFIELDS, http_build_query( array( 'secret' => RECAPTCHA_V3_SECRET_KEY, 'response' => $token ) ) );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$response = curl_exec( $ch );
curl_close( $ch );
$arrResponse = json_decode( $response, true );

// verify the response
if ( $arrResponse[ "success" ] == '1' && $arrResponse[ "action" ] == $action && $arrResponse[ "score" ] >= 0.7 ) {
  echo "Uw CAPTCHA response was verkeerd";
  exit;
}
else {

// controle op lege velden..
  if ( $_POST[ "email" ] == "" ) {
    echo "Niet alle velden zijn ingevuld";
  }
else {

// Check if the "Sender's Email" input field is filled out
    $email = $_POST[ "email" ];

// Sanitize E-mail Address
    $email = filter_var( $email, FILTER_SANITIZE_EMAIL );

// Validate E-mail Address
    $email = filter_var( $email, FILTER_VALIDATE_EMAIL );
    if ( !$email ) {
      echo "<script> alert('foutief emailadres')</script>";
    }
else {
      $to = "ixxx@xxxxding.nl";
      $subject = "Website formulier";
      $message = "Afzender: " . $_POST[ "name" ] . "\r\n" . "Email: " . $_POST[ "email" ] . "\r\n" ."Bericht: " . $_POST[ "message" ];
      $headers = "From:" . $email . "\r\n";

// Message lines should not exceed 70 characters (PHP rule), so wrap it
      $message = wordwrap( $message, 70, "\r\n" );

// Send Mail By PHP Mail Function
      if ( mail( $to, $subject, $message, $headers ) ) {
        echo "<script> alert('$name bedank voor uw bericht. Wij zullen u zo snel mogelijk antwoorden.');
                            window.location.href='index.html';
                            </script>"
;
      }
else {
        echo "<script> alert('Je bericht kon niet worden verzonden. Verander je e-mailadres of neem contact op met $to.')</script>";
        exit;
      }
    }
  }
}

?>
Gewijzigd op 22/03/2020 16:58:34 door Edwin Sabel
 
PHP hulp

PHP hulp

27/09/2020 06:21:58
 
Frank Nietbelangrijk

Frank Nietbelangrijk

22/03/2020 16:32:07
Quote Anchor link
Wat voor melding verwacht je?
 
- Ariën -
Beheerder

- Ariën -

22/03/2020 16:33:18
Quote Anchor link
Ik raad aan om je mailadres hier even uit je code te halen, voordat deze door spambotjes wordt opgespoord.
Bedoel je verder dat de mail leeg is?
Gewijzigd op 22/03/2020 16:33:36 door - Ariën -
 
Edwin Sabel

Edwin Sabel

22/03/2020 17:00:43
Quote Anchor link
Ik verwacht een alert met de melding "$name bedank voor uw bericht. Wij zullen u zo snel mogelijk antwoorden.". Het email bericht wordt volledig opgemaakt gestuurd met alle info.
Ik krijg wel een bericht bij het terugbel script met de melding en de mogelijkheid om ok te klikken en dan ga je terug naar index.html
Gewijzigd op 22/03/2020 17:02:16 door Edwin Sabel
 
- Ariën -
Beheerder

- Ariën -

22/03/2020 17:02:43
Quote Anchor link
Maar wat zie je dan wel? En waarom eigenlijk een alert, en niet gewoon direct op het scherm tonen?
 
Edwin Sabel

Edwin Sabel

22/03/2020 17:03:40
Quote Anchor link
Overigens ik krijg nu al spam binnen via dit webformulier??
 
- Ariën -
Beheerder

- Ariën -

22/03/2020 17:06:50
Quote Anchor link
Maar wat zie je nu dan?

Als je spam tegen wilt houden, dan is reCaptcha een goede oplossing:
https://stevencotterill.com/articles/adding-google-recaptcha-v3-to-a-php-form
Gewijzigd op 22/03/2020 17:07:00 door - Ariën -
 
Edwin Sabel

Edwin Sabel

22/03/2020 17:11:56
Quote Anchor link
Als je kijkt op de website dieetbegeleiding.nl kun je een terugbel verzoek doen en krijg je een alert, onderaan bij het mailform gaat hij naar de submit.php pagina en blijft daar hangen.
Ik vind dit een mooie oplossing vandaar dat ik dit zo gemaakt heb.
Probeer maar eens.
Gewijzigd op 22/03/2020 17:12:24 door Edwin Sabel
 
- Ariën -
Beheerder

- Ariën -

22/03/2020 17:14:18
Quote Anchor link
Alert vind ik persoonlijk niet echt bedoeld voor zulke dingen. Maar wat bedoel je: Blijft hangen?
Wat gebeurt er precies? Blijft hij zoeken naar een bepaalde URL? Of zie je een leeg scherm na het volledig laden?
 
Frank Nietbelangrijk

Frank Nietbelangrijk

22/03/2020 17:15:02
Quote Anchor link
Ik zie overigens ook helemaal geen HTML? en een <script> blok met een alert(); hoort toch wel in een <body> blok thuis welke op zijn beurt weer in een <html> blok hoort.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<!doctype>
<html>
    <head>
        <title>hallo</title>
    </head>
    <body>
        <script>
            alert('test');
        </script>
    </body>
</html>
 
Edwin Sabel

Edwin Sabel

22/03/2020 17:15:58
Quote Anchor link
- Ariën - op 22/03/2020 17:06:50:
Maar wat zie je nu dan?

Als je spam tegen wilt houden, dan is reCaptcha een goede oplossing:
https://stevencotterill.com/articles/adding-google-recaptcha-v3-to-a-php-form


Ik gebruik juist reCaptcha V3, maar ben blijkbaar nog niet goed bezig.
 
- Ariën -
Beheerder

- Ariën -

22/03/2020 17:18:30
Quote Anchor link
Misschien moet je de response even uitlezen (ergens loggen), en kijken welke score Google die meegeeft?
 
Frank Nietbelangrijk

Frank Nietbelangrijk

22/03/2020 17:19:25
Quote Anchor link
>> Ik gebruik juist reCaptcha V3, maar ben blijkbaar nog niet goed bezig.

Dat je nog geen alert krijgt hoeft niet te betekenen dat je reCaptcha niet goed werkt. Het zijn twee verschillende dingen. Heb je mijn laatste post gelezen? Anders moet je gewoon debuggen. Stap voor stap door je code heenlopen en met een simpele echo 'WERKT'; in een if statement uitvogelen of een if statement wordt uitgevoerd of overgeslagen.
 
Edwin Sabel

Edwin Sabel

22/03/2020 17:32:35
Quote Anchor link
Frank Nietbelangrijk op 22/03/2020 17:15:02:
Ik zie overigens ook helemaal geen HTML? en een <script> blok met een alert(); hoort toch wel in een <body> blok thuis welke op zijn beurt weer in een <html> blok hoort.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<!doctype>
<html>
    <head>
        <title>hallo</title>
    </head>
    <body>
        <script>
            alert('test');
        </script>
    </body>
</html>


Dit snap ik niet helemaal, bij mijn terugbel verzoek werkt het wel en heb ik ook geen html blok, alleen de alert functie in mijn php pagina.
 
- Ariën -
Beheerder

- Ariën -

22/03/2020 17:41:43
Quote Anchor link
Hoe krijg ik een alert, zie een lege site erachter, en ik ga weer terug.
Kan je dit niet via een AJAX-request doen?

Verstuur het formulier via AJAX
- Controleer de invoer (waarom mag ik 'test' invullen?)
- Verstuur deinvoer
- Toon onderin een melding met: "Je verzoek is verstuurd, we bellen je snel mogelijk terug"

Veel netter :-)
 
Frank Nietbelangrijk

Frank Nietbelangrijk

22/03/2020 17:50:54
Quote Anchor link
>> Dit snap ik niet helemaal, bij mijn terugbel verzoek werkt het wel en heb ik ook geen html blok, alleen de alert functie in mijn php pagina.

Misschien dat een browser het wel oppakt maar het is niet zoals het zou moeten. Dan blijft debuggen dus over!
 
Edwin Sabel

Edwin Sabel

22/03/2020 17:51:14
Quote Anchor link
Ik ben niet bekend met AJAX, en vond dit al knap van mezelf.
Er is geen check op veldinhoud, alleen of deze leeg is. (moet ik nog kijken hoe dat werkt)
Maar blijft waarom de ene wel werkt en de andere niet.
Dit is de wel werkende.
<!--script terugbellen-->
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
define( "RECAPTCHA_V3_SECRET_KEY", 'xxxxxxxxxxxxxxxxxxxxxxxxxxx' );

if ( isset( $_POST[ 'phone' ] ) && $_POST[ 'phone' ] ) {
  $email = filter_var( $_POST[ 'phone' ], FILTER_SANITIZE_STRING );
}
else {
  // set error message and redirect back to form...
  //header('location: index.html');

  exit;
}


$token = $_POST[ 'token' ];
$action = $_POST[ 'action' ];

// call curl to POST request
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, "https://www.google.com/recaptcha/api/siteverify" );
curl_setopt( $ch, CURLOPT_POST, 1 );
curl_setopt( $ch, CURLOPT_POSTFIELDS, http_build_query( array( 'secret' => RECAPTCHA_V3_SECRET_KEY, 'response' => $token ) ) );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$response = curl_exec( $ch );
curl_close( $ch );
$arrResponse = json_decode( $response, true );

// verify the response
if ( $arrResponse[ "success" ] == '1' && $arrResponse[ "action" ] == $action && $arrResponse[ "score" ] >= 0.5 ) {
  echo "Uw CAPTCHA response was verkeerd.";
  exit;
}
else {
  // controle op lege velden..
  if ( $_POST[ "phone" ] == "" ) {
    echo "Uw telefoonnummer is niet ingevuld";
  }
else {
    $to = "sabelmobiel@ziggo.nl";
    $subject = "Terugbel formulier";
    $message = $_POST[ "phone" ];
    $headers = "From:ixxxa@xxxxxiding.nl";

    // Send Mail By PHP Mail Function
    if ( mail( $to, $subject, $message, $headers ) ) {
      echo "<script> alert('Bedank voor uw bericht. Wij bellen u terug op nummer $message');
                            window.location.href='index.html';
                            </script>"
;
    }
else {
      echo "<script> alert ('Je bericht kon niet worden verzonden. Probeer het later nog eens.')</script>";
      exit;
    }
  }
}

?>
Gewijzigd op 22/03/2020 17:52:32 door Edwin Sabel
 
Frank Nietbelangrijk

Frank Nietbelangrijk

22/03/2020 17:53:48
Quote Anchor link
Dat weten we nu nog niet maar doe eens een echo $arrResponse['score']; ?
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.