PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   Kontakt Formular mit recaptcha (https://www.php-resource.de/forum/php-developer-forum/106058-kontakt-formular-mit-recaptcha.html)

albagen 06-10-2017 11:20

Kontakt Formular mit recaptcha
 
Hallo!
Ich habe nicht viel Ahnung von php und brauche dringend eure Hilfe.

Ich habe ein Kontakt Formular mit dem Formular Generator recaptcha erstellt
www.webbausteine.de/tools/formulargenerator.php

Das Formular selbst funktioniert gut.
https://wedego.ch/beba/kontakt.php

Nun wenn ich das Formular ausfülle und schicke, kommt die Meldung unten an die gleiche Seite
Zitat:

Vielen Dank, die Nachricht wurde versendet.
Sie erhalten eine Kopie der Nachricht an Ihre E-Mail-Adresse“


obwohl ich für die Erfolgsmeldung auf die Seite danke.html weiter leiten will.

Es soll noch ein syntax Error an die Linie:
$Fehler = ["name"=>"", "email"=>"", "betreff"=>"", "nachricht"=>"", "recapcha"=>""];


Ich wäre sehr dankbar wen Sie die Quelltext ansehen würden und mir sagen können wo das Problem liegt. Ich bin seit Tagen am um probieren und mir fehlt nichts Neues.
Ich würde mich freuen wenn ihr mir weiterhelfen könntet.


Vielen Dank im Voraus
Geni


Zwischen Head habe ich eingefügt:

<script type="text/javascript" src="Javascript/spamspan.js"></script>
<link href="css/style_beba.css" rel="stylesheet" type="text/css" />
<!-- Google reCAPTCHA API -->
<script src='https://www.google.com/recaptcha/api.js'></script>

Die php code:

PHP-Code:

 <?php
 
/*
    Aktion: Formulardaten als E-Mail versenden.
    Formular - PHP 5.4+, Zeichenkodierung: UTF-8
    Siehe: www.webbausteine.de/tipps/schriftzeichen_richtig_darstellen.php
  
    Erstellt mit dem Formular Generator (23.01.2016) - 
    www.webbausteine.de/tools/formulargenerator.php
  
    Bitte testen Sie das Formular ausführlich und
    beachten Sie die Hinweise im Quelltext!
 */
  
 // PHP Fehlermeldungen (1 um das Formular zu testen) anzeigen.
 
error_reporting(0); // (0/1)
  
 // Weiterleitung - Nach dem absenden des Formulars,
 // gelangt der Benutzer über einen Link auf folgende Seite:
 
$Weiterleitung "danke.html";
 
$name = isset($_POST["name"]) ? strip_tags(trim($_POST["name"])) : ""// Name
 
$email = isset($_POST["email"]) ? strip_tags(trim($_POST["email"])) : ""// E-Mail
 
$betreff = isset($_POST["betreff"]) ? strip_tags(trim($_POST["betreff"])) : ""// Betreff
 
$nachricht = isset($_POST["nachricht"]) ? strip_tags(trim($_POST["nachricht"])) : ""// Nachricht
 
$KopieCk = isset($_POST["Kopie"]) ? " checked='checked'" null// E-Mail Kopie
  
 // Benutzereingaben überprüfen
 // Die Meldungen müssen hier eventuell angepasst werden.
 
$Fehler = ["name"=>"""email"=>"""betreff"=>"""nachricht"=>"""recapcha"=>""];
 if (isset(
$_POST["submit"])) {
  
$Fehler["name"] = strlen($_POST["name"]) < " Bitte füllen Sie dieses Feld aus!" "";
  
$Fehler["email"] = filter_var($_POST["email"], FILTER_VALIDATE_EMAIL) === false " Geben Sie eine gültige E-Mail-Adresse ein!" "";
  
$Fehler["betreff"] = strlen($_POST["betreff"]) < " Bitte füllen Sie dieses Feld aus!" "";
  
$Fehler["nachricht"] = strlen($_POST["nachricht"]) < 10 " Bitte füllen Sie dieses Feld aus (min. 10 Zeichen)!" "";
  
$Fehler["recapcha"] = strlen($_POST['g-recaptcha-response']) < 100 " Bitte das reCAPCHA bestätigen!" "";
 }
  
 
// Formular erstellen
 
$Formular "
 <form action='" 
$_SERVER["SCRIPT_NAME"] . "' method='post'>
  
 <p>
  <label> Name:
 <span class='pflichtfeld'>✲ " 
$Fehler["name"] . "</span><br>
   <input type='text' name='name' value='" 
$name "' size='50'>
  </label>
 </p>
  
 <p>
  <label> E-Mail:
 <span class='pflichtfeld'>✲ " 
$Fehler["email"] . "</span><br>
   <input type='email' name='email' value='" 
$email "' size='50'>
  </label>
 </p>
  
 <p>
  <label> Betreff:
 <span class='pflichtfeld'>✲ " 
$Fehler["betreff"] . "</span><br>
   <input type='text' name='betreff' value='" 
$betreff "' size='50'>
  </label>
 </p>
  
 <p>
  <label> Nachricht:
  <span class='pflichtfeld'>✲ " 
$Fehler["nachricht"] . "</span><br>
  <textarea name='nachricht' cols='50' rows='8'>" 
$nachricht "</textarea>
  </label>
 </p>
  
 <p>
  <label> 
  <input type='checkbox' name='Kopie'" 
$KopieCk ">
  Eine Kopie dieser Nachricht an meine E-Mail Adresse
  </label>
 </p>
  
 <div class='g-recaptcha' data-sitekey='6LeUFiwUAAA.ect'></div>
 <span class='pflichtfeld'>" 
$Fehler["recapcha"] . "</span>
  
 <p>
  <br>
  <input type='submit' name='submit' value='Formular absenden'>
 </p>
  
 <p>
  <small>Bitte alle mit <span class='pflichtfeld'>✲</span>
  markierten Felder ausfüllen.</small>
 </p>
  
 </form>
 "
;
  
 
// Formular abgesendet
 
if (isset($_POST["submit"])) {
  
  
// Sind keine Benutzer-Eingabefehler vorhanden
  
if (implode(""$Fehler) == "") {
  
   
$captcha $_POST['g-recaptcha-response'];
  
   
// Hier muss der geheime Schlüssel (Secret Key) eingefügt werden
   
$SecretKey "6LeUFiwUA.ect";
  
   
$response file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=" $SecretKey "&response=" .
    
$captcha "&remoteip=" $_SERVER['REMOTE_ADDR']);
  
   if (
$response.success==true) {
  
    
// Daten als E-Mail versenden (Vorschlag) - Bitte anpassen!
  
    // Zeitzone und das aktuelle Datum setzen
     // http://de3.php.net/manual/de/timezones.europe.php
    
date_default_timezone_set("Europe/Berlin");
    
$Datum date("d.m.Y H:i");
   
    
// Empfänger E-Mail
    
$Mailto "gentjana@hotmail.ch";
    
$betrifft"Kontaktformular Beba DE"// Betrifft
  
   
    // Inhalt der E-Mail setzen
    
$Text "   Gesendet am: $Datum Uhr
     Name: $name
     E-Mail: $email
     Betreff: $betreff
     Nachricht: $nachricht
    "
;
   
    
// E-Mail versenden
    
mb_internal_encoding("UTF-8");
    
$Betrifft mb_encode_mimeheader($betrifft"UTF-8""Q");
    
$Kopfzeile "MIME-Version: 1.0;\nFrom: " mb_encode_mimeheader($name"UTF-8""Q") .
     
"<" $email ">" "\nContent-Type: text/plain; Charset=UTF-8;\n";
   
    if (
mail($Mailto$Betrifft$Text$Kopfzeile)) {
   
     echo 
"<p>Vielen Dank, die Nachricht wurde versendet.</p>";
    }
    else {
   
     
// Wenn die Daten nicht versendet werden konnten,
     // wird die E-Mail-Adresse für den direkten Kontakt eingeblendet.
     
echo "<p>Beim Senden der Nachricht ist ein Fehler aufgetreten!<br>" 
     
"Bitte wenden Sie sich direkt an: <a href='mailto:" $Mailto "'>" $Mailto "</a></p>";
    }
   
    
// E-Mail Kopie versenden (Vorschlag) - Bitte anpassen!
    
if (isset($_POST["Kopie"])) {
   
     
// Diese Nachricht wird an die E-Mail-Adresse des Besuchers gesendet.
   
     // Name/Signatur
     
$Signatur "Kinderkrippe Beba";
  
     
// Betrifft
     
$Betrifft "Kopie von Ihrer Nachricht";
  
     
// Inhalt der E-Mail setzen
     
$Text "   Vielen Dank für Ihren Besuch auf unserer Webseite. Wir haben folgende Nachricht erhalten:
             
   
     Name: $name
     E-Mail: $email
     Betreff: $betreff
     Nachricht: $nachricht
  
     Mit freundlichen Grüßen
     $Signatur  
     "
;
   
     
// E-Mail Kopie versenden
     
$Betrifft mb_encode_mimeheader($Betrifft"UTF-8""Q");
     
$Kopfzeile "MIME-Version: 1.0;\nFrom: " mb_encode_mimeheader($Signatur"UTF-8""Q") .
      
"<" $Mailto ">" "\nContent-Type: text/plain; Charset=UTF-8;\n";
     if (
mail($email$Betrifft$Text$Kopfzeile)) {
      echo 
"<p>Sie erhalten eine Kopie der Nachricht an Ihre E-Mail-Adresse.</p>";
     }
    }
   
     
// Weiterleitung
     
echo "<p><a href='" $Weiterleitung "' target='_top'> </a></p>";
  
   }
   else {
    echo 
'<h2>You are spammer ! Get out</h2>';
   }
  
  }
  else {
  
   
// Formular und Benutzer-Eingabefehler ausgeben
   
echo $Formular;
  }
 }
 else {
  
  
// Formular ausgeben
  
echo $Formular;
 }
 
?>


h3ll 06-10-2017 11:47

Der Code ist voller Sicherheitslücken. Ich würde ihn entsorgen.

albagen 06-10-2017 15:37

Danke h3ll für die schnelle Antwort.
Können Sie mir helfen die Fehler zu finden?


Alle Zeitangaben in WEZ +2. Es ist jetzt 21:35 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG