Inhalt eines Angabefeldes als Email versenden

06/05/2011 - 08:27 von Joerg Klein | Report spam
Hallo,

ich bin ein Anfànger, was die Programmierung in PHO betrifft.

ich bin gerade dabei ein script zu schreiben, welches aus einem
Eingabefeld besteht und einem Submit button. In dieses Eingabefeld soll
eine Telefonnummer eingetragen werden. Nach dem Klick auf den Submit
Button soll durch php geprüft werden, ob es sich wirklich um eine
Telefonnummer handelt. Wenn ja, dann versende diese Telefonnummer als Email.

Zuerst die Überprüfung der Eingabe. Die Funktioniert einwandfrei. Kein
Wunder, die habe ich nur abgeschrieben.

Der zweite Teil ist das Versenden der Email. Eine Email wird versendet,
nur leider nicht die Telefonnummer aus dem Textfeld. Da habe ich jetzt
alles mögliche versucht. Nach dem Versenden der Email soll das
Eingabefeld wieder geleert werden und die Seite soll wieder normal
angezeigt werden. Aber auch das tut es nicht, sondern zeigt eine leere
Seite an.


Der dritte Teil ist der der Tabelle. Hier scheint der Wurm drinnen zu
stecken.

Vielen Dank für die Hilfe

Joerg

hier meine bescheidenen Anfànge:

<?php
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 'On');

$err = ''; // Variable für die Fehlerausgabe
$success = ''; // Variable für die Ausgabe der Erfolgsmeldung

// Überprüfung der Benutzereinagben
if (isset($_POST['senden'])) {
$eingabe = array(); // zum abspeichern überprüfter Benutzereingaben
$error = array(); // zum merken von fehlerhaften Benutzereingaben

/*
* Überprüfung eines Textfeldes: Wurde auch eine Telefonnummer
eingegeben?
* Wir nehmen an, dass eine Telefonnummer nur aus Zahlen und min. 4
Ziffern besteht
*/
if (isset($_POST['telefon']) && strlen(trim($_POST['telefon'])) >
4 && is_numeric($_POST['telefon'])) {
$eingabe['telefon'] = trim($_POST['telefon']);
} else {
$error['telefon'] = 'Telefon';
}

if (empty($error)) {
exit();
} else {
$errors = implode(', ',$error);
$err = 'Die von Ihnen eingegebene Telefonnummer ist falsch: ';
}
} // END if (isset($_POST['senden']))
?>


<?php
define ('MAILTO', "web@example.com"); // Empfànger hier eintragen
define ('MAILFROM', "Sofort Hilfe"); // ggfls. Absender hier eintragen
define ('MAILSUBJECT', "Rückruf"); // Hier betreff eintragen
define ('CHARSET', "ISO-8859-15"); // Zeichenkodierung ggfls. anpassen

@mail(MAILTO, MAILFROM, MAILSUBJECT)
?>



<form id="telefon_form" action="" method="post" >
<table cellpadding="0" cellspacing="0" border="1"
class="top" width="0" >
<tr>
<td class="table_td_noline">&nbsp;</td>
<td class="table_td_0_noline"><input
onkeyup="checkAll('telefon_form');" id="telefon" name="telefon"
style="border-color:#9F0738; width: 240px;" value="" /></td>
</tr>

<tr>
<td class="table_td_noline">&nbsp;</td>
<td><input type="submit" name="senden" value="Rückruf
anfordern" style="border-color:#000000" /></td>
</tr>
</table>
</form>


<?php
// eventuelle Fehler ausgeben
if(!empty($err)) echo $err;
// evtl. Erfolgsmeldung ausgeben
if(!empty($success)) echo $success;
?>
 

Lesen sie die antworten

#1 Stefan+Usenet
06/05/2011 - 09:03 | Warnen spam
On Fri, 06 May 2011 08:27:26 Joerg Klein wrote:
Zuerst die Überprüfung der Eingabe. Die Funktioniert einwandfrei. Kein
Wunder, die habe ich nur abgeschrieben.



Wobei mir die Pruefung ein wenig streng erscheint. Geben Deine Anwender
denn nie Sonderzeichen wie z.B. "-" oder "/" ein, um die Telefonnummer in
ihre Bestandteile aufzutrennen?

Der zweite Teil ist das Versenden der Email. Eine Email wird versendet,
nur leider nicht die Telefonnummer aus dem Textfeld. Da habe ich jetzt
alles mögliche versucht.



...aber eventuell nicht das passende? :-)

<?php
define ('MAILTO', ""); // Empfànger hier eintragen
define ('MAILFROM', "Sofort Hilfe"); // ggfls. Absender hier eintragen
define ('MAILSUBJECT', "Rückruf"); // Hier betreff eintragen
define ('CHARSET', "ISO-8859-15"); // Zeichenkodierung ggfls. anpassen

@mail(MAILTO, MAILFROM, MAILSUBJECT)
?>



<http://www.php.net/manual/en/function.mail.php> verraet Dir folgendes:

| bool mail (string $to, string $subject, string $message [, string $additional_headers [, string $additional_parameters]])

Der Befehl mail() ist an sich schon nicht gerade ideal fuer die ersten
Gehversuche mit PHP, aber so, wie Du ihn verwendest, _kann_ es auch gar
nicht funktionieren, da Du die Parameter voellig durcheinandergewuerfelt
hast.

Servus,
Stefan

http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich
Offizieller Erstbesucher(TM) von mmeike

Der verstàndige Mann im Mond braucht Stefan. Das muß ja wohl einen Grund haben?
(Sloganizer)

Ähnliche fragen