![]() |
Willkommen, Gast ( Anmelden | Registrierung )
![]() |
![]()
Beitrag
#1
|
|
Kann auf gar keinen Fall einen Videorekorder programmieren! ![]() ![]() ![]() Gruppe: User Beiträge: 210 Mitglied seit: 08.12.2003 Wohnort: Bad Zwischenahn Mitglieds-Nr.: 1.751 ![]() |
Hi Ihr,
ich will auf meinen Seiten eine Newsletter-Bestellung einbauen. Das klappt auch, aber, es klappt leider auch dann, wenn die Seite nur aufgerufen wird. Ergo ich mach was falsch. ;-)) Ich hoffe Ihr könnt mir helfen, hier der Code: QUELLTEXT <?php $admin= 'amethyst@amethyst-edv.de'; $subject= 'Newsletter-Bestellung'; $message= 'Nachrichten an '.$admin.' von '.$email.":\n\n"; foreach($HTTP_POST_VARS as $name=> $value) { $message.= "$name:$value\n"; } mail($admin, $subject, $message, "From: $email"); ?> <form method="post" action="mail.php"> <table height="120" width="150" class="news" border="0" > <tr> <td align="center"> <span style="text-align:center;color:white;font-weight:bold;font-size:x-small;">E-Mail:</span><br> <input class="text" size="10" type="text" name="email"><br><br> <input class="senden" type="submit" name="senden" value="Senden"> </td> </tr> </table> </form> Ich krieg also bei jedem Seitenaufruf eine Bestellung, logischerweise ohne email-adresse. Irgendwas fehlt da, wenn eine Adresse eingetragen wird, wird auf eine andere Seite weitergeleitet, wo es dann auch wieder zurück auf die Ursprungsseite geht, Erfolg? Eine leere Newsletterbestellung. Ihr habt sicher die Lösung, was da nicht richtig ist, bzw. was da fehlt. Lieber Gruß Uschi Der Beitrag wurde von amethyst bearbeitet: 20.02.2005 - 2:08 |
|
|
![]() |
![]()
Beitrag
#2
|
|
Kommt Zeit, kommt Rat, kommt Conrad! ![]() Gruppe: Mods Beiträge: 1.169 Mitglied seit: 21.11.2001 Wohnort: Altenkirchen, Westerwald Mitglieds-Nr.: 42 ![]() |
Hi Uschi,
im Grunde gibt es zwei Möglichkeiten so ein Formular zu gestalten. Wenn die Formularseite eine php-Seite ist, muß sie zunächst an sichselbst zurückgegeben werden, um anschließend fehlermeldungen, ok und e-Mail generieren zu können. Oder, Du schreibst eine normale HTML Seite, der ein Formular enthält mit allen Feldern die Du darin haben möchtest. Klickt der User nun auf *Senden* wird der im Formular geschriebenen Inhalt ein PHP-Script übergeben, welches nicht nur die Mail generiert die dann zu Dir kommt, sondern auch kontrolieren kann ob alle Felder entsprechend ausgefüllt wurden. Alle Formulare auf meine Webseite sind so aufgebaut. Ein Beispiel:>>HIER<< Versuche mal dieses Formular einfach so, oder nur teilweise ausgefüllt zu versenden... Du wirst sehen, es wird eine Fehlermeldung ausgegeben. Diese Fehlermeldung kommt von diesem Script: www.trimmelterhof.de/scripts/forms/jackform.php Das gleiche Script gibt auch das ok, wenn alles richtig scheint, um es alsdann in e-Mail form an mich zu senden. Die Quellcode der Formularseite kannst Du von der Webseite Kopieren und Deine Zwecke anpassen. Die Quellcode des Scriptes solltest Du ebenfalls Deine bedürfnisse anpassen; Du findest sie hierunten, es ist weitestgehend mit Kommentare versehen (rot) und (fast) Selbstklärend: HTML <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <TITLE>Trimmelterhof-Team-Jacken</TITLE> </HEAD> <BODY CLASS="first"> <DIV ID="all"> <!--Seitenkopf--> Bla Bla <!--Ende Seitenkopf--> <DIV ID="content"> <H2>Bestellformular</H2> <p> </p> <? /*<!--Das Formular wird gesendet an:-->*/ $webmaster = "conrad@trimmelterhof.de"; /*<!-- E-Mail-Adresse als Absender -->*/ $absender = "Teamjacken"; /* <!--IP bestimmen -->*/ $ip = getenv('REMOTE_ADDR'); /*<!-- IP aufloesen und Host bestimmen -->*/ $host = gethostbyaddr($ip); /*<!-- Zeit bestimmen -->*/ $zeit = date("d.m.Y H:i:s"); /*<!--Formatierung der Mail-->*/ /*<!--Betreff-->*/ $betreffwebmaster = "Team-Jackenbestellung"; /*<!--Textkoerper-->*/ $koerperwebmaster = " ********** Formularangaben **************** Anrede $Status Name $nachname Strasse $Strasse Ort $PLZ $Ort Telefon $Telefon e-Mail $mail von Seite: $subject Konfektionsgroesse: $konfektion Zahlung akzeptiert: $zahlung Text: $nachricht *********** Ende Angaben **************** "; /*<!--Formatierung der Copy-Mail-->*/ /*<!--Betreff-->*/ $betreffabsender = "Jackenbestellung"; /*<!--Textkoerper-->*/ $koerperabsender = "Sie haben folgende Nachricht versandt:\n $nachricht\n"; /* <!--Fehlermeldungen -->*/ $mailfalsch = "<H3 class='red'>Fehler!</H3><p>Ist diese E-Mail-Adresse wirklich richtig?</p><p>Bitte kontrollieren Sie noch einmal die Eingabe und senden Sie dann das Formular erneut ab.</P><center><FORM NAME='Zurück' ACTION='javascript:history.go(-1)'><INPUT TYPE='submit' VALUE='Zurück zum Formular'></FORM></center>"; /*<!-- Fehlermeldungen der Felder-->*/ $felderleer = "<H3 class='red'>Fehler!</H3><p>Ihre Bestellung konnte nicht versendett werden, da nicht alle erforderliche Adressfelder ausgefüllt wurden.</p><center><FORM NAME='Zurück' ACTION='javascript:history.go(-1)'><INPUT TYPE='submit' VALUE='Zurück zum Formular'></FORM></center>"; /*<!-- Fehlermeldungen der Checkboxen-->*/ $checkboxleer = "<H3 class='red'>Fehler!</H3><p>Ihre Bestellung konnte nicht versendet werden, da entweder die Konfektionsgröße nicht angegeben, und / oder die Checkbox der Zahlungsbedingungen nicht angekreuzt wurde(n).</p><center><FORM NAME='Zurück' ACTION='javascript:history.go(-1)'><INPUT TYPE='submit' VALUE='Zurück zum Formular'></FORM></center>"; /*<!--Erfolgsmeldung-->*/ $abgesandt = "<H3 class='grn'>Danke,</H3><H3>Ihre Bestellung wurde erfolgreich versendet.</H3>"; /*<!--Sind alle Felder ausgefuellt? -->*/ if ($nachname == "" || $Strasse == "" || $PLZ == "" || $Ort == "" || $Telefon == "" || $mail == "") { /*<!--nein-->*/ echo "$felderleer"; } else { /*<!--Checkboxen ok?-->*/ if ($konfektion == "" || $zahlung == "") { /*<!--nein-->*/ echo "$checkboxleer"; } else { /*<!--ja-->*/ /*Ist die E-Mail-Adresse richtig?-->*/ if (ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,3})$", $mail)) { /*<!--E-Mail-Adresse ist richtig-->*/ mail("$webmaster","$betreffwebmaster","$koerperwebmaster\n","FROM: $absender\n"); /*<!--Kopie an Absender?-->*/ if ($kopie == "ja") { mail("$mail","$betreffabsender","$koerperabsender","FROM: $absender\n"); echo "$abgesandt"; } else { echo "$abgesandt"; } } else { /*<!--nein-->*/ echo "$mailfalsch"; } } } ?> <P> </P> <!--Seitenfuss--> Bla Bla <!--Ende Fuss--> </BODY> </HTML> Einfach mal ausbropieren. Viel Spaß! cu Conny |
|
|
![]()
Beitrag
#3
|
|
is getting harder Gruppe: User Beiträge: 26 Mitglied seit: 24.09.2004 Mitglieds-Nr.: 3.770 ![]() |
eventuell Zeile 8 ersetzen mit
QUELLTEXT if($email!='') mail($admin, $subject, $message, "From: $email"); MfG |
|
|
![]() ![]() |
![]() |
Vereinfachte Darstellung | Aktuelles Datum: 15.05.2025 - 6:32 |