• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Kontaktformular funktioniert nicht

bigbootykilla

Neues Mitglied
Hallo,

ich habe versucht ein Kontaktformular zu erstellen. Leider funktioniert das überhaupt nicht.:sad: Wenn ich das Kontaktformular ausfülle und abschicken will, so öffnet mir der Firefox das "Speichern unter" Fenster und will die Kontaktformular.php runterladen. Was läuft falsch? Code wird hier gepostet

mein HTML Code:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
     "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
    
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Wakusi Welt</title>
    <link rel="stylesheet" type="text/css"  href="index.css" /> 
</head>


<body>
    <div id="container"> <!--container Start-->
        <div id="header"> <!--header Start-->
            <img src="bilder/wakusi_banner.gif" alt="Wakusi" width="700" height="150" />
        </div> <!--header Ende-->
            
        <div id="navlinks"> <!--navlinks Start-->
            <div> <!--Liste f�igation Start-->
                <ul>
                    <li><a href="index.html">Home</a></li> 
                    <li><a href="news.html">News</a></li>
                    <li><a href="zukunft.html">Zukunft/Projekte</a></li>
                    <li><a href="downloads.html">Downloads</a></li>
                    <li><a href="http://wakusi.de/forum" target="_blank">Forum</a></li>
                    <li><a href="kontakt.html">Kontakt</a></li>
                    <li><a href="vpn.html">VPN</a></li>
                </ul>
            </div> <!--Liste f�igation Ende-->
        </div> <!--navlinks Ende-->
            
        <div id="content"> <!--content Start-->
            <h1 style="text-align: left; padding-left: 50px;">Kontaktformular</h1>
            <blockquote><p>
                Wenn ihr Probleme oder Anregungen habt, so könnt ihr uns unter dem Kontaktformular 
                erreichen, wenn ihr es ausfüllt. Das Kontaktformular sollte nur benutzt werden, wenn
                euch das Forum nicht mehr helfen kann. 
            </p></blockquote>
            <table border="0" cellpadding="1" cellspacing="2">
                <form action="kontaktformular-auswerten.php" method="post">
                    <tr>
                      <td>Name:</td>
                      <td><input name="Name" size="25" type="text"></td>
                    </tr>
                    <tr>
                      <td>eMail:</td>
                      <td><input name="Email" size="25" type="text"></td>
                    </tr>
                    <tr>
                      <td>Betreff:</td>
                      <td><select name="Betreff" size="1"><option>Hilfe</option>
                         <option>Kritik</option></select></td>
                    </tr>
                    <tr>
                      <td>Nachricht:</td>
                   <td><textarea cols="25" name="Nachricht" rows="5"></textarea></td>
                    </tr>
                    <tr>
                      <td>Wünsche Antwort:</td>
                      <td>Ja <input name="Antwort" checked type="radio" value="ja">    Nein <input name="Antwort" type="radio" value="nein"></td>
                    </tr>
                    <!--<tr>
                      <td>Newsletter abonnieren:</td>
                      <td><input checked name="Newsletter" type="checkbox" value="ja"></td>
                    </tr>-->
                    <tr>
                      <td align="center" colspan="2"><input name="Send" type="submit" value="Abschicken">    <input name="Reset" type="reset" value="Löschen"></td>
                    </tr>
                </form>
            </table>
            
            <br/>
            <br/>
            <br/>
        </div> <!--content Ende-->
        
        <div id="footer"> <!--footer Start-->
            <a href="impressum.html">Impressum</a>
        </div> <!--footer Ende-->
    </div> <!--container Ende-->

</body>
</html>
Mein PHP Code:

PHP:
<html>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
     "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">

<body>
<?php

$Empfaenger = "[email protected]";

if($_REQUEST['Send'])
{
   if(empty($_REQUEST['Name']) || empty($_REQUEST['Email']) || empty($_REQUEST['Nachricht']))
   {
      echo"Bitte gehen Sie <a href=\"javascript:history.back();\">zur�> und f�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�e eMail!";
   }
}
else
{
   echo"Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese <a href=\"kontaktformular.php\">Seite</a>.";
}

?>
</body>
</html>
Ich brauch eigentlich für den Anfang nichts besonderes. Wenn das Kontaktformular funktioniert, wäre ich vollstens zufrieden. Ich hab mal den ganzen Code gepostet, da ich mir denke vielleicht kann ich php nicht einfach in ein html document mit einem doctype einfügen. Jedoch wenn ich das alles rauslösche und nur den php code überlasse, speichert er die datei auch. Naja..... bitte da um hilfe. Ich denke den css code braucht ihr dafür wohl nicht. Falls doch werd ich ihn auch posten.

vielen Dank und gruß

bigbootykilla

P.S. Der Code für das Kontaktformular in der HTML Datei liegt im "content" Bereich. Ich hab sicherheitshalber mal den ganzen Code hochgeladen, um Fehler an andere Stelle auszuschliessen.
 
Zuletzt bearbeitet:
Das er die Datei herunterladen möchte ist merkwürdig.

Du sprichst von einer HTML-Datei. Damit PHP-Code vom Parser verarbeitet wird, muss die Datei die Endung .php haben! Hast du dir im Handbuch schonmal die Beispiele zur Funktion mail() angesehen? PHP: mail - Manual

Verwende statt $_REQUEST besser $_POST.

Code:
<a href=\"javascript:history.back();\">
ist nicht sehr gelungen. Einige User deaktivieren Javascript und können dann mit dem "Zurück"-Link nichts mehr anfangen!
 
Ist das bei allen PHP-Dateien so oder nur in diesem Fall?
Wenn's überall so ist, dann ist irgend etwas in der Server Konfiguration falsch.

Auf Anhieb erkenne ich hier keinen Fehler; zumindest keinen, der für das Problem verantwortlich sein könnte.

MfG Icy
 
*lach* es lag in der Tat am Server, ich hatte lokal kein php am laufen und deswegen kam der Download. Aber komisch find ich das schon... ist das normal, wenn PHP Fehler macht, dass er die Datei runterladen möchte?

Find ich ja schon bissel doof.

naja jedenfalls geht es jetzt ohne Änderung meines Codes, den ich oben gepostet habe. :smile:
 
Naja, wenn der Server nicht weiß, was er mit einer PHP-Datei machen soll, dann lädt er die erstmal runter. Ist genau so wie bei zip- oder irgendwelchen anderen spezifischen Dateiformaten. Die kann der Server selbst nicht interpretieren und werden heruntergeladen.

MfG Icy
 
Zurück
Oben