Autor |
Nachricht |
KobraPatron
Threadersteller
Dabei seit: 09.01.2011
Ort: Nürnberg
Alter: 43
Geschlecht:
|
Verfasst Di 31.05.2011 10:07
Titel PHP-Kontaktformular |
|
|
Hallo Zusammen,
habe wieder ein kleines Problem und benötige bitte ganz dringend Hilfe.
Wirhabe in unserem Firmen-Netzwerk einen Apache-Server laufen. Es gibt auch soweit keine Probleme, php-Seiten laufen und MySQL macht auch keine Probleme. Jetzt wollte ich ein einfaches Kontaktformular implementieren. Hab diverse fertige Formular getestet, aber es funktioniert keins. Es wird wahrscheinlich ein Einstellungssache des Webservers sein, aber was genau das sein kann, konnte ich jetzt nach längerer Recherche nicht identifizieren. Bei mir ist register_globals=off und das soll auch so, lt. Admin, so bleiben. Hab es aber auch testweise auf "on" gestellt, aber das hat auch nichts gebracht. Was muss ich beachten??
Ich hab hier zum Beispiel den Code von der Seite http://www.webdesign.rudomazin.de/scripte/kostenlose/kontaktformular-script.html genommen. Er gibt mit lauter Parse-Errors.
Vielleicht sollte ich auch noch erwähnen, dass ich was PHP angeht noch nicht so die große Erfahrung habe. Ich kenne mich zwar in anderen Programmierspachen aus, aber hier fehlen mir doch die Erfahrungswerte.
Vielen Dank für die Hilfe
hier ein Script, der bei mir auch nicht läuft:
Code: | <?php
// wenn das Formular übermittelt wurde
if(isset($_POST['abschicken'])){
while(list($feld,$wert)=each($HTTP_POST_VARS)){
// übermittelte Inhalte "entschärfen"
$wert=preg_replace("/(content-type:|bcc:|cc:|to:|from:)/im", "",$wert);
$$feld=$wert;
// die übermittelten Variablen werden zum "Text der Email" zusammengefasst
if($feld!="abschicken"){
$mailnachricht.=ucfirst($feld).": $wert\n";
}
}
$mailnachricht.="\nDatum/Zeit: ". date("d.m.Y H:i:s");
// Überprüfen ob alle Pflichtfelder gefüllt sind
empty($nachname) ? $err[] = "<p>- Bitte den Nachnamen angeben.</p>" : false;
empty($vorname) ? $err[] = "<p>- Bitte den Vornamen angeben.</p>" : false;
empty($email) ? $err[] = "<p>- Bitte die Email-Adresse angeben.</p>" : false;
empty($text) ? $err[] = "<p>- Welchen Wunsch haben Sie? Bitte den Text eingeben.</p>" : false;
// wenn nicht, werden die Fehlermeldungen ausgegeben und das "halbgefüllte" Formular angezeigt
if(!empty($err)) {
echo "<p>Bitte korrigieren Sie folgende Fehler:</p>";
foreach($err as $fehler){
echo $fehler;
} ?>
<form action="#" method="post">
<table width="100%" border="0" cellpadding="3" cellspacing="1">
<tr><td width="140" align="right">*Nachname:</td><td align="left"><input type="text" name="nachname" value="<?php echo $nachname; ?>" style="width:100%;" /></td></tr>
<tr><td align="right">*Vorname:</td><td align="left"><input type="text" name="vorname" value="<?php echo $vorname; ?>" style="width:100%" /></td></tr>
<tr><td align="right">Firma:</td><td align="left"><input type="text" name="firma" value="<?php echo $firma; ?>" style="width:100%" /></td></tr>
<tr><td align="right">Postanschrift:</td><td align="left"><input type="text" name="strasse" value="<?php echo $strasse; ?>" style="width:100%" /></td></tr>
<tr><td align="right">Telefon:</td><td align="left"><input type="text" name="telefon" value="<?php echo $telefon; ?>" style="width:100%" /></td></tr>
<tr><td align="right">*E-Mail:</td><td align="left"><input type="text" name="email" value="<?php echo $email; ?>" style="width:100%" /></td></tr>
<tr><td colspan="2"><textarea rows="12" style="width:100%" name="text"><?php echo $text; ?></textarea></td><td> </td></tr>
<tr><td colspan="2" align="left" nowrap><br /><input type="reset" value="Formular löschen" style="width:49%" /> <input type="submit" name="abschicken" class="button" value="Formular absenden" style="width:49%" /></td></tr>
</table>
</form>
<p>*Pflichtfelder</p>
<?php // sind keine Fehler vorhanden, wird die Email versendet
} else {
$mailbetreff="Kontaktformular ".$_SERVER['HTTP_HOST'];
// HIER DIE EMPFÄNGER EMAIL-ADRESSE ANPASSEN!!!
if(mail("adresse@domain.tld", $mailbetreff, $mailnachricht, "From: $email")){
echo "<p>Vielen Dank für Ihre eMail!</p>";
} else {
echo "<p>Ein Fehler ist aufgetreten!</p>";
}
}
// das Formular welches als erstes dem Besucher angezeigt wird
} else { ?>
<form action="#" method="post">
<table width="100%" border="0" cellpadding="3" cellspacing="1">
<tr><td width="140" align="right">*Nachname:</td><td align="left"><input type="text" name="nachname" value="" style="width:100%;" /></td></tr>
<tr><td align="right">*Vorname:</td><td align="left"><input type="text" name="vorname" value="" style="width:100%" /></td></tr>
<tr><td align="right">Firma:</td><td align="left"><input type="text" name="firma" value="" style="width:100%" /></td></tr>
<tr><td align="right">Postanschrift:</td><td align="left"><input type="text" name="strasse" value="" style="width:100%" /></td></tr>
<tr><td align="right">Telefon:</td><td align="left"><input type="text" name="telefon" value="" style="width:100%" /></td></tr>
<tr><td align="right">*E-Mail:</td><td align="left"><input type="text" name="email" value="" style="width:100%" /></td></tr>
<tr><td colspan="2"><textarea rows="12" style="width:100%" name="text"></textarea></td><td> </td></tr>
<tr><td colspan="2" align="left" nowrap><br /><input type="reset" value="Formular löschen" style="width:49%" /> <input type="submit" name="abschicken" value="Formular absenden" style="width:49%" /></td></tr>
</table>
</form>
<p>*Pflichtfelder</p>
<br />
<br />
<br />
<br /><!-- bitte lassen Sie diesen Link sichtbar auf Ihrer Seite. Danke! -->
<p style="text-align:right;font:normal 10px Verdana, Arial, Helvetica, sans-serif;"><a href="http://www.webdesign.rudomazin.de/" target="_blank">Script von DERUS Webdesign</a></p>
<?php
}
?> |
[Bitte Code-Tags verwenden]
Zuletzt bearbeitet von Kash am Di 31.05.2011 10:21, insgesamt 1-mal bearbeitet
|
|
|
|
|
bacon
Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Di 31.05.2011 10:11
Titel
|
|
|
|
|
|
|
|
Anzeige
|
|
|
Sp4wNi
Dabei seit: 26.10.2010
Ort: Düsseldorf
Alter: 37
Geschlecht:
|
Verfasst Di 31.05.2011 10:16
Titel
|
|
|
Das was Bacon dir sagen will ist:
Ersteinmal den CODE-Tag benutzen
und den CODE so formen, dass er für uns lesbar ist.
Sonst wird sich den Keiner angucken.
danke
und grüße
|
|
|
|
|
bacon
Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Di 31.05.2011 10:23
Titel
|
|
|
Nein. Bacon will damit sagen, dass wir hier nicht dazu da sind, Müllcode zu debuggen und man darüber hinaus gefälligst die Suchfunktion und das Manual benutzen sollte.
Zuletzt bearbeitet von bacon am Di 31.05.2011 10:23, insgesamt 1-mal bearbeitet
|
|
|
|
|
KobraPatron
Threadersteller
Dabei seit: 09.01.2011
Ort: Nürnberg
Alter: 43
Geschlecht:
|
Verfasst Di 31.05.2011 11:33
Titel
|
|
|
bacon hat geschrieben: | Nein. Bacon will damit sagen, dass wir hier nicht dazu da sind, Müllcode zu debuggen und man darüber hinaus gefälligst die Suchfunktion und das Manual benutzen sollte. |
hmm. Du sollst doch nicht debuggen. Das war nur ein Beispiel, was bei mir auch nicht läuft. Das Problem ist eher, dass eine Einstellung am Server nicht stimmt.
|
|
|
|
|
Sp4wNi
Dabei seit: 26.10.2010
Ort: Düsseldorf
Alter: 37
Geschlecht:
|
Verfasst Di 31.05.2011 12:22
Titel
|
|
|
KobraPatron hat geschrieben: | bacon hat geschrieben: | Nein. Bacon will damit sagen, dass wir hier nicht dazu da sind, Müllcode zu debuggen und man darüber hinaus gefälligst die Suchfunktion und das Manual benutzen sollte. |
hmm. Du sollst doch nicht debuggen. Das war nur ein Beispiel, was bei mir auch nicht läuft. Das Problem ist eher, dass eine Einstellung am Server nicht stimmt. |
nimm nen ordentliches sowas hier zb:
Kontaktformular
oder schreib selber eins
|
|
|
|
|
KobraPatron
Threadersteller
Dabei seit: 09.01.2011
Ort: Nürnberg
Alter: 43
Geschlecht:
|
Verfasst Di 31.05.2011 12:40
Titel
|
|
|
Sp4wNi hat geschrieben: | KobraPatron hat geschrieben: | bacon hat geschrieben: | Nein. Bacon will damit sagen, dass wir hier nicht dazu da sind, Müllcode zu debuggen und man darüber hinaus gefälligst die Suchfunktion und das Manual benutzen sollte. |
hmm. Du sollst doch nicht debuggen. Das war nur ein Beispiel, was bei mir auch nicht läuft. Das Problem ist eher, dass eine Einstellung am Server nicht stimmt. |
nimm nen ordentliches sowas hier zb:
Kontaktformular
oder schreib selber eins |
jo, danke für den Tipp. Die Formulare sind echt gut gemacht!
Mein Problem konnte ich jetzt lokalisieren...
Hab folgende Fehlermeldung bekommen:
Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in
Da der SMTP-Dienst keines Providers hinterlegt ist, kann ich keine Nachrichten versenden. Ich hab zwar noch keine Alternativ-Lösung, aber vielleicht habt ihr ja ne Idee.
|
|
|
|
|
DerM
Dabei seit: 18.01.2009
Ort: -
Alter: 42
Geschlecht:
|
Verfasst Di 31.05.2011 14:08
Titel
|
|
|
seit wann braucht mail() per Default nen SMTP ??
Hab ich was verpasst o.O
|
|
|
|
|
|
|
|
Ähnliche Themen |
Kontaktformular
PHP Kontaktformular
PHP Kontaktformular
Kontaktformular
Kontaktformular mit PHP
Kontaktformular
|
|