Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Kontaktformular

Frage Entwicklung PHP

Mitglied: mike7050

mike7050 (Level 2) - Jetzt verbinden

15.08.2009, aktualisiert 25.08.2009, 3723 Aufrufe, 7 Kommentare

Hallo,

habe mit PHP ein Kontaktformular erstellt, nur leider bekomme ich folgende Fehlermeldung im Mozilla Firefox:

zurück und füllen Sie alle Felder aus!"; } else { $Mailnachricht = "Sie haben folgende Nachricht erhalten: \n\n"; while(list($Formularfeld, $Wert)=each($_REQUEST)) { if($Formularfeld!="Send") { $Mailnachricht .= $Formularfeld.": ".$Wert."\n"; } } $Mailnachricht .= "\nDatum/Zeit: "; $Mailnachricht .= date("d.m.Y H:i:s"); $Mailbetreff = "Kontakt: "; $Mailbetreff .= $_REQUEST['Betreff']; mail($Empfaenger, $Mailbetreff, $Mailnachricht, "From: ".$_REQUEST['Email']); echo"Vielen Dank für Ihre eMail!"; } } else { echo"Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese Seite."; } ?>

Das PHP Scrip sieht so aus:
01.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
02.
"http://www.w3.org/TR/html4/loose.dtd"
03.
<html> 
04.
<head> 
05.
<title>Kontaktformular mit PHP</title> 
06.
</head> 
07.
<body> 
08.
<?php 
09.
 
10.
$Empfaenger = "info@irgendwas.de"
11.
 
12.
if($_REQUEST['Send']) 
13.
14.
   if(empty($_REQUEST['Name']) || empty($_REQUEST['Email']) || empty($_REQUEST['Nachricht'])) 
15.
16.
      echo"Bitte gehen Sie <a href=\"javascript:history.back();\">zurück</a> und füllen Sie alle Felder aus!"
17.
18.
   else 
19.
20.
      $Mailnachricht = "Sie haben folgende Nachricht erhalten: \n\n"
21.
      while(list($Formularfeld, $Wert)=each($_REQUEST)) 
22.
23.
         if($Formularfeld!="Send"
24.
25.
            $Mailnachricht .= $Formularfeld.": ".$Wert."\n"
26.
27.
28.
      $Mailnachricht .= "\nDatum/Zeit: "
29.
      $Mailnachricht .= date("d.m.Y H:i:s"); 
30.
      $Mailbetreff = "Kontakt: "
31.
      $Mailbetreff .= $_REQUEST['Betreff']; 
32.
      mail($Empfaenger, $Mailbetreff, $Mailnachricht, "From: ".$_REQUEST['Email']); 
33.
      echo"Vielen Dank für Ihre eMail!"
34.
35.
36.
else 
37.
38.
   echo"Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese <a href=\"kontaktformular.php\">Seite</a>."
39.
40.
 
41.
?> 
42.
</body> 
43.
</html> 
Woran kann es liegen?

MFG

Mike
Mitglied: Cubic83
15.08.2009 um 10:00 Uhr
Hallo,

versuch doch mal folgende Schreibweise:

01.
 
02.
Statt:  
03.
 
04.
echo"Bitte gehen Sie <a href=\"javascript:history.back();\">zurück</a> und füllen Sie alle Felder aus!"; 
05.
 
06.
Jetzt:  
07.
 
08.
echo 'Bitte gehen Sie <a href="javascript:history.back();">zurück</a> und füllen Sie alle Felder aus'; 
09.
 
Und bitte: Pack deinen Code in ein Code Tag (Setze code vor und /code mit < hinter deinen Code). Da kriegt man ja Augenkrebs ;)

mfG
Bitte warten ..
Mitglied: Gilneas
15.08.2009 um 10:01 Uhr
Zwei Dinge fallen mir auf:

Hier ist das Leerzeichen falsch gesetzt
<!DOCTYPE HTML PUBLIC " -W3CDTD HTML 4.01 Transitional EN"
"http:www.w3.org/TR/html4/loose.dtd">

Hier würde ich die Gänsefüßchen anders setzen:
echo 'Bitte gehen Sie <a href="javascript:history.back();">zurück</a> und füllen Sie alle Felder aus!';
Bitte warten ..
Mitglied: mike7050
15.08.2009 um 10:11 Uhr
Hi,

okay werde es später gleich testen!

Danke vorerst
Bitte warten ..
Mitglied: dog
15.08.2009 um 18:04 Uhr
Wenn dass:

zurück und füllen Sie alle Felder aus!"; } else { $Mailnachricht = "Sie haben folgende Nachricht erhalten: \n\n"; while(list($Formularfeld, $Wert)=each($_REQUEST)) { if($Formularfeld!="Send") { $Mailnachricht .= $Formularfeld.": ".$Wert."\n"; } } $Mailnachricht .= "\nDatum/Zeit: "; $Mailnachricht .= date("d.m.Y H:i:s"); $Mailbetreff = "Kontakt: "; $Mailbetreff .= $_REQUEST['Betreff']; mail($Empfaenger, $Mailbetreff, $Mailnachricht, "From: ".$_REQUEST['Email']); echo"Vielen Dank für Ihre eMail!"; } } else { echo"Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese Seite."; } ?>
deine Fehlermeldung ist, ist das ganze relativ leicht: Dein Webserver interpretiert den PHP-Code nicht.
Das kann passieren, wenn du die Datei mit .html statt .php abgespeichert hast oder aber, wenn der Webserver PHP gar nicht kann.

Grüße

Max
Bitte warten ..
Mitglied: Gilneas
16.08.2009 um 19:30 Uhr
@dog:
Nein, das kann nicht sein, denn sonst müsste er auch die voranstehenden Befehle ausgeben.
Bitte warten ..
Mitglied: dog
16.08.2009 um 21:48 Uhr
Hättest du es einfach mal ausprobiert, hättest du gesehen, dass ich recht habe:
6dc5d31a0bbcd3139375d6eec395a194-bild_7 - Klicke auf das Bild, um es zu vergrößern

<?php beginnt mit < und wird durch Sanitization vom Browser als Tag betrachtet.
Der wiederum endet beim ersten <a>-Tag und da beginnt auch die Ausgabe...

Hast du ein Glück, dass ich nicht der Forums-Koleriker bin

Grüße

Max
Bitte warten ..
Mitglied: Gilneas
16.08.2009 um 22:03 Uhr
@ dog:
U r right. Da haste mich etz erwischt . Das kommt davon, wenn man nur drüber fliegt und nicht genau liest.

Logisch, IE z.B. ignoriert ja unbekannte Tags einfach, damit ist das die sogar die wahrscheinlichste Lösung, da das script bei mir, sogar mit dem fehlerhaften Doctype funktioniert.

/edit:
Oh je, hier gibts auch Forumskoleriker?
Bitte warten ..
Ähnliche Inhalte
HTML
Kontaktformular 3 Spaltig (1)

Frage von wescraven07 zum Thema HTML ...

PHP
gelöst Kontaktformular: Ausgabe auf derselben Seite (3)

Frage von honeybee zum Thema PHP ...

Java
Recaptcha4J: Wechsel von v1 auf v2

Frage von klaraF zum Thema Java ...

Neue Wissensbeiträge
Virtualisierung

Docker Monitoring und Steuerung per "sen"

Tipp von Frank zum Thema Virtualisierung ...

Viren und Trojaner

Neues Botnetz über IoT-Geräte

(6)

Information von certifiedit.net zum Thema Viren und Trojaner ...

Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Heiß diskutierte Inhalte
Windows Installation
Windows 10 neu installieren (17)

Frage von imebro zum Thema Windows Installation ...

Router & Routing
Externe IP von innen erreichbar machen (15)

Frage von Windows10Gegner zum Thema Router & Routing ...

Windows Server
Frage zu Server Rack (11)

Frage von rainergugus zum Thema Windows Server ...