Ich habe ein Script geproggt das es Webmastern ermöglicht, ohne Script-Kenntnisse ein PHP-Kontaktformular zu erstellen...
Netter Ansatz, leider hakt es teilweise:
-
Du greifst direkt auf die Formular-Variablen zu. Das ist in allen Standard-PHP-Installationen seit Monaten nicht mehr möglich (und das aus einem guten Grund). Verwende stattdessen $_POST[] oder (bei alten PHP-Versionen) $HTTP_POST_VARS[].
-
Bei der Benennung der Felder kann man HTML eingeben. Das ist (gewollt oder nicht) eine gute Sache, aber leider hälst Du Dich nicht konsequent daran: Im Vorschauformular werden die HTML-Tags als Text angezeigt, im generierten Code erscheinen sie als Code. Entscheide Dich für eine Variante.
-
Eine Mail-Adresse sollte anklickbar sein.
-
Man kann das erzeugte Formular wunderbar zum Spamming benutzen, da die Mail an eine Adresse gesendet wird, die im Formular steht, wobei freundlicherweise auch noch die Adresse des Formularbesitzers als Absender erscheint und nicht die des Spammers.
Kontaktformulare sollten _grundsätzlich_ nur an eine _fest im Code verankerte_ Adresse versandt werden. -
Wenn ich es mir recht überlege, sollte es eigentlich mit einem Formular überhaupt nicht möglich sein, mehr als eine Mail pro viertel Stunde abzusetzen. Es gibt so viele böse Menschen und mit einer DSL-Leitung kann man seeeeehr viele POST-Anfragen pro Sekunde absetzen... ;>
-
Der vierte Parameter von mail() ist nicht für den Betreff gedacht, sondern für zusätzliche Kopfzeilen (zum Beispiel die Absenderangabe per "From:"). Anscheinend hast Du da etwas mit den Variablen $headers und $betreff durcheinander gebracht.
-
Wie eben angedeutet wäre es sinnvoll, wenn der Absender der Mail der des Formularausfüllers wäre. Verwende dazu "From:" und $headers. Schließlich möchte man auf eine Kontaktanfrage auch ohne Umstände antworten können.
-
Es wäre sinnvoll, wenn Du vor dem Absenden prüfst, ob überhaupt etwas ausgefüllt wurde.
-
Du solltest nochmal an Deiner Rechtschreibung feilen, insbesondere an der Groß-/Kleinschreibung im Deutschen wie im Englischen.
-
Und warum ich das Formular nicht benutzen würde: Der HTML-Code ist -pardon- saumäßig. Aber die Benutzung von <font>, <b>, <u> und Konsorten ist natürlich Geschmackssache :)
Gruß,
soenk.e