Antworten auf deine Fragen:
Neues Thema erstellen

Fehler bei Kontaktformular PHP

chicco97

Nicht mehr ganz neu hier

Hallo Zusammen,

hab mal wieder ein Problemchen und komme nicht weiter. Ihr könnt mir bestimmt helfen.

Beim absenden meines Kontakfomular kommt folgende Fehlermeldenung:
"Warning: Cannot modify header information - headers already sent by /form-mailer.php on line 59"

Das Formular
funktioniert soweit ganz gut bis auf diese Meldung mit weißen Bildschirm. Hat das wa smit UFT-8 ohne BOM zu tun ?

Ich danke Euch schon mal !!

PHP:
<?php
 
// ======= Konfiguration:
 
$mailTo = 'info@meins.eu';
$mailFrom = '"FormMailer" <info@meins.eu>';
$mailSubject    = 'Kontaktformular';
$returnPage = 'http://www.homepage.homepage.eu/versendet.html';
$returnErrorPage = 'http://www.homepage.homepage.eu/nichtversendet.html';
$mailText = "";
 
// ======= Text der Mail aus den Formularfeldern erstellen:
 
// Wenn Daten mit method="post" versendet wurden:
if(isset($_POST)) { 
   // alle Formularfelder der Reihe nach durchgehen:
   foreach($_POST as $name => $value) {
      // Wenn der Feldwert aus mehreren Werten besteht:
      // (z.B. <select multiple>)
      if(is_array($value)) {
          // "Feldname:" und Zeilenumbruch dem Mailtext hinzufügen
          $mailText .= $name . ":\n";
          // alle Werte des Feldes abarbeiten
          foreach($valueArray as $entry) {
             // Einrückungsleerzeichen, Wert und Zeilenumbruch 
             // dem Mailtext hinzufügen
             $mailText .= "   " . $value . "\n";
          } // ENDE: foreach
      } // ENDE: if  
      // Wenn der Feldwert ein einzelner Feldwert ist:
      else {
          // "Feldname:", Wert und Zeilenumbruch dem Mailtext hinzufügen
          $mailText .= $name . ": " . $value . "\n";
      } // ENDE: else
   } // ENDE: foreach
} // if
 
// ======= Korrekturen vor dem Mailversand 
 
// Wenn PHP "Magic Quotes" vor Apostrophzeichen einfügt:
 if(get_magic_quotes_gpc()) {
     // eventuell eingefügte Backslashes entfernen
     $mailtext = stripslashes($mailtext);
 }

 
// ======= Mailversand
 
// Mail versenden und Versanderfolg merken
$mailSent = @mail($mailTo, $mailSubject, $mailText, "From: ".$mailFrom);
 
// ======= Return-Seite an den Browser senden
 
// Wenn der Mailversand erfolgreich war:
if($mailSent == TRUE) {
   // Seite "Formular verarbeitet" senden:
   header("Location: " . $returnPage);
}
// Wenn die Mail nicht versendet werden konnte:
else {
   // Seite "Fehler aufgetreten" senden:
   header("Location: " . $returnErrorPage);
}
 
// ======= Ende
 
exit();
 
?>
 
Zuletzt bearbeitet:

DarkFather

Nicht mehr ganz neu hier

AW: Fehler bei Kontaktformular PHP

Bitte nächstes mal den php-Tag verwenden.
Ich seh erstmal keinen Fehler, evtl. wird irgendwo ein Leerzeichen ausgegeben, z.B. wenn vor dem php-Block eines drin ist.
 

owieortho

Aktives Mitglied

AW: Fehler bei Kontaktformular PHP

Erstmal hast Du unten ein zweites php-Fragment in dem Du ein zweites Mal Deine redirects konfigurierst.
Dann würde ich die redirects an den Anfang des Skripts stellen und für den Fall, dass $mailSent leer ist das weitere Skript laufen lassen. Damit vermeidest Du, dass der header später, wo er überhaupt nicht hingehört, versendet wird.

O.
 

DarkFather

Nicht mehr ganz neu hier

AW: Fehler bei Kontaktformular PHP

Ich bin jetzt davon ausgegengen, dass er es nur doppelt gepostet hat. Mal sehen was der TE schreibt.
 

hub

nicht ganz neu hier

AW: Fehler bei Kontaktformular PHP

Moin moin,
das Problem kommt mit Sicherheit von einer Fehlermeldung.
Meine Frage ist:
1. Ist es wirklich $_POST und nicht vielleicht $_GET ?
2. Wo zauberst du $valueArray her?
PHP:
foreach($valueArray as $entry) {
  // Einrückungsleerzeichen, Wert und Zeilenumbruch
  // dem Mailtext hinzufügen
  $mailText .= " " . $value . "\n";
} // ENDE: foreach
3. Kann man das Formular auch sehen?

Gruß Ulli
 

chicco97

Nicht mehr ganz neu hier

AW: Fehler bei Kontaktformular PHP

Vielen Dank für Eure Beiträge !! Das zweite PHP Fragment ist versehentlich mit reingerutscht, war aber nicht das Problem.

Danke @DarkFahter. Es war ein Leerzeichen ganz zu Beginn. Ich habs leider nicht mehr gesehen. (Schäm)

Tolles Forum, Vielen Dank !!

Gruß Micha
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Keine Mitglieder online.

Statistik des Forums

Themen
118.635
Beiträge
1.538.449
Mitglieder
67.556
Neuestes Mitglied
Ggirl
Oben