PSD-Tutorials.de
Forum für Design, Fotografie & Bildbearbeitung
Tutkit
Agentur
Hilfe
Kontakt
Start
Forum
Aktuelles
Besonderer Inhalt
Foren durchsuchen
Tutorials
News
Anmelden
Kostenlos registrieren
Aktuelles
Suche
Suche
Nur Titel durchsuchen
Von:
Menü
Anmelden
Kostenlos registrieren
App installieren
Installieren
JavaScript ist deaktiviert. Für eine bessere Darstellung aktiviere bitte JavaScript in deinem Browser, bevor du fortfährst.
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen
alternativen Browser
verwenden.
Antworten auf deine Fragen:
Neues Thema erstellen
Start
Forum
Sonstiges
Webdesign, Webentwicklung & Programmierung
PHP, Javascript, jQuery, Ajax, nodeJS, MySQL...
Newsletter macht mich irre!
Beitrag
<blockquote data-quote="AbbySu" data-source="post: 1988648" data-attributes="member: 488764"><p>Hallo an alle,</p><p></p><p>also so langsam werd ich irre. Schon viel zu viele Tage habe ich jetzt damit verbracht zu verstehen, was ich alles brauche um den Usern zu ermöglichen sich für den Newsletter einzutragen und diesen Usern dann auch den Newsletter zukommen zu lassen.</p><p></p><p>Es ist auch nicht so sehr hilfreich, dass Google bevorzugt Foren ausspuckt, in denen dann immer nur der Hinweis steht, dass man Google nutzen soll...</p><p>Kostenpflichtige Skripts kommen auch nicht in Frage und ich möchte auch nicht über einen Drittanbieter das ganze Lösen. Doch die gefundenen Skripte und deren Tutorials haben mich nur bedingt weiter gebracht. Ein bisschen lernen konnte ich auf jeden Fall, aber leider noch nicht genug.</p><p></p><p>Also inzwischen habe ich mich entschlossen das Formular nicht mimt PHP sondern direkt in HTML zu schreiben. Das stell ich mal hier ein:</p><p>[HTML]</p><p> <form action="newsletter/news.php" method="post" id="newl_form"></p><p> <p></p><p> <label for="news_vname">Vorname:<span class="col_gruen">*</span></label></p></p><p> <p></p><p> <input id="news_vname" type="text" name="vname" size="30" maxlength="30" /></p></p><p> <p></p><p> <label for="news_name">Nachname:<span class="col_gruen">*</span></label></p></p><p> <p></p><p> <input id="news_name" type="text" name="name" size="30" maxlength="30" /></p></p><p> <p> </p><p> <label for="news_gbt">Geburtstag:<span class="col_gruen">*</span></label></p></p><p> <p></p><p> <input id="news_gbt" type="text" name="gbt" size="30" maxlength="30" /></p></p><p> <p></p><p> <label for="news_email">E&ndash;Mail Adresse:<span class="col_rot">*</span></label></p></p><p> <p></p><p> <input id="news_email" type="text" name="email" size="30" maxlength="30" /></p></p><p> <p></p><p> <input id="news_auswahl1" type="radio" name="news" value="bestellt" checked /></p><p> <label for="news_auswahl1">Bestellen</label>&emsp;</p><p> <input id="news_auswahl2" type="radio" name="news" value="abbestellt" /></p><p> <label for="news_auswahl2">Abbestellen</label></p></p><p> <p></p><p> <input type="submit" value="Absenden" class="btn_absenden" /></p></p><p> </form></p><p> <p></p><p> <span class="col_gruen">* Freiwillige Angaben</span><br /></p><p> <span class="col_rot">* Pflichtfeld</span></p></p><p> [/HTML]</p><p>action="newsletter/news.php", weil bei meinem letzten Versuch diese Datei verwendet wurde. Ja und diese datei kann ich ja auch mal einstellen, aber ich versteh selbst noch nicht alles davon.</p><p>[PHP]<?</p><p>//Eingabe-Ueberpruefung</p><p></p><p> function MailChek($Addr, $Level) {</p><p></p><p>// z. Zt. gueltige Top-Level Domains</p><p> $gTLDs = "com:net:org:edu:gov:mil:int:arpa:";</p><p> $CCs = "ad:ae:af:ag:ai:al:am:an:ao:aq:ar:as:at:au:aw:az:ba:bb:bd:be:bf:".</p><p> "bg:bh:bi:bj:bm:bn:bo:br:bs:bt:bv:bw:by:bz:ca:cc:cf:cd:cg:ch:ci:".</p><p> "ck:cl:cm:cn:co:cr:cs:cu:cv:cx:cy:cz:de:dj:dk:dm:do:dz:ec:ee:eg:".</p><p> "eh:er:es:et:fi:fj:fk:fm:fo:fr:fx:ga:gb:gd:ge:gf:gh:gi:gl:gm:gn:".</p><p> "gp:gq:gr:gs:gt:gu:gw:gy:hk:hm:hn:hr:ht:hu:id:ie:il:in:io:iq:ir:".</p><p> "is:it:jm:jo:jp:ke:kg:kh:ki:km:kn:kp:kr:kw:ky:kz:la:lb:lc:li:lk:".</p><p> "lr:ls:lt:lu:lv:ly:ma:mc:md:mg:mh:mk:ml:mm:mn:mo:mp:mq:mr:ms:mt:".</p><p> "mu:mv:mw:mx:my:mz:na:nc:ne:nf:ng:ni:nl:no:np:nr:nt:nu:nz:om:pa:".</p><p> "pe:pf:pg:ph:pk:pl:pm:pn:pr:pt:pw:py:qa:re:ro:ru:rw:sa:sb:sc:sd:".</p><p> "se:sg:sh:si:sj:sk:sl:sm:sn:so:sr:st:su:sv:sy:sz:tc:td:tf:tg:th:".</p><p> "tj:tk:tm:tn:to:tp:tr:tt:tv:tw:tz:ua:ug:uk:um:us:uy:uz:va:vc:ve:".</p><p> "vg:vi:vn:vu:wf:ws:ye:yt:yu:za:zm:zr:zw:";</p><p></p><p>// country codes koennen folgende TLD`s vorangestellt sein</p><p> $cTLDs = "com:net:org:edu:gov:mil:co:ne:or:ed:go:mi:";</p><p></p><p> $fail = 0;</p><p></p><p>// wandelt in Kleinbuchstaben um</p><p> $Addr = strtolower($Addr);</p><p></p><p>// teilt die Adresse in user und domain Teile</p><p> $UD = explode("@", $Addr);</p><p> if (sizeof($UD) != 2 || !$UD[0]) $fail = 1;</p><p> echo "$ud[0]";</p><p> echo "$ud[1]";</p><p>// teilt den domain Abschnitt</p><p> $Levels = explode(".", $UD[1]); $sLevels = sizeof($Levels);</p><p> if ($sLevels < 2) $fail = 1;</p><p></p><p>// holt die TLD und ueberprueft die L&auml;nge</p><p> $tld = $Levels[$sLevels-1];</p><p> $tld = ereg_replace("[>)}]$|]$", "", $tld);</p><p> if (strlen($tld) < 2 || strlen($tld) > 3 && $tld != "arpa") $fail = 1;</p><p></p><p>// ueberprueft TLD</p><p> if ($Level && !$fail) {</p><p> $Level--;</p><p> if (!ereg($tld.":", $gTLDs) && !ereg($tld.":", $CCs)) $fail = 2;</p><p> }</p><p></p><p>// ueberprueft country code</p><p> if ($Level && !$fail) {</p><p> $cd = $sLevels - 2; $domain = $Levels[$cd].".".$tld;</p><p> if (ereg($Levels[$cd].":", $cTLDs)) { $cd--; $domain = $Levels[$cd].".".$domain; }</p><p> }</p><p> } //end MailChek</p><p></p><p> $fail = MailChek ($email,1) ;</p><p> if ($fail != 0){</p><p> include ('error.php3');</p><p> exit;</p><p> }</p><p> else {</p><p> include ('acknow.php3');</p><p> }</p><p></p><p>//Log at database textfile - Daten werden in txt-Datei geschrieben</p><p> $datum=date('Y-m-d H:i',time());</p><p> $zeile=$datum.'²'.$email.'²'.$news."\n";</p><p> $fp=fopen('news.txt','a');</p><p> fwrite($fp,$zeile,100);</p><p> fclose($fp);</p><p></p><p>//mySQL-Verbindung</p><p> echo "<br>";</p><p> echo "<br>";</p><p> $sqlid=mysql_connect("localhost","****","******"); //Hier host, user und Passwort eintragen</p><p> if (!$sqlid) die ("Kann Server nicht erreichen");</p><p> else echo 'Datenbank connect';</p><p></p><p> mysql_select_db("testdatenbank",$sqlid); //Die Datenbank 'newsletter' muss schon angelegt sein</p><p> $sql="insert into newsletter (email, name, vname, gbt) values ('$email', '$name', '$vname', '$gbt')"; //ebenso die Tabelle 'email_adress'</p><p> mysql_query ($sql,$sqlid);</p><p></p><p> mysql_close($sqlid);</p><p></p><p>//email to user</p><p> mail ("admin@localhost", //Hier den Empfaenger eintragen</p><p> "newsletter $news", //Hier steht die Betreff-Zeile</p><p> "Hallo DREAMRIDER, $email hat den newsletter $news und zwar am $datum", //Hier der Text der mail</p><p> "From:$email"); //Hier steht der Absender</p><p>?>[/PHP]Besonders den letzten Absatz...</p><p></p><p>Ach ich weiß auch nicht, ich hätte nicht gedacht, dass das so schwer ist...</p></blockquote><p></p>
[QUOTE="AbbySu, post: 1988648, member: 488764"] Hallo an alle, also so langsam werd ich irre. Schon viel zu viele Tage habe ich jetzt damit verbracht zu verstehen, was ich alles brauche um den Usern zu ermöglichen sich für den Newsletter einzutragen und diesen Usern dann auch den Newsletter zukommen zu lassen. Es ist auch nicht so sehr hilfreich, dass Google bevorzugt Foren ausspuckt, in denen dann immer nur der Hinweis steht, dass man Google nutzen soll... Kostenpflichtige Skripts kommen auch nicht in Frage und ich möchte auch nicht über einen Drittanbieter das ganze Lösen. Doch die gefundenen Skripte und deren Tutorials haben mich nur bedingt weiter gebracht. Ein bisschen lernen konnte ich auf jeden Fall, aber leider noch nicht genug. Also inzwischen habe ich mich entschlossen das Formular nicht mimt PHP sondern direkt in HTML zu schreiben. Das stell ich mal hier ein: [HTML] <form action="newsletter/news.php" method="post" id="newl_form"> <p> <label for="news_vname">Vorname:<span class="col_gruen">*</span></label></p> <p> <input id="news_vname" type="text" name="vname" size="30" maxlength="30" /></p> <p> <label for="news_name">Nachname:<span class="col_gruen">*</span></label></p> <p> <input id="news_name" type="text" name="name" size="30" maxlength="30" /></p> <p> <label for="news_gbt">Geburtstag:<span class="col_gruen">*</span></label></p> <p> <input id="news_gbt" type="text" name="gbt" size="30" maxlength="30" /></p> <p> <label for="news_email">E–Mail Adresse:<span class="col_rot">*</span></label></p> <p> <input id="news_email" type="text" name="email" size="30" maxlength="30" /></p> <p> <input id="news_auswahl1" type="radio" name="news" value="bestellt" checked /> <label for="news_auswahl1">Bestellen</label>  <input id="news_auswahl2" type="radio" name="news" value="abbestellt" /> <label for="news_auswahl2">Abbestellen</label></p> <p> <input type="submit" value="Absenden" class="btn_absenden" /></p> </form> <p> <span class="col_gruen">* Freiwillige Angaben</span><br /> <span class="col_rot">* Pflichtfeld</span></p> [/HTML] action="newsletter/news.php", weil bei meinem letzten Versuch diese Datei verwendet wurde. Ja und diese datei kann ich ja auch mal einstellen, aber ich versteh selbst noch nicht alles davon. [PHP]<? //Eingabe-Ueberpruefung function MailChek($Addr, $Level) { // z. Zt. gueltige Top-Level Domains $gTLDs = "com:net:org:edu:gov:mil:int:arpa:"; $CCs = "ad:ae:af:ag:ai:al:am:an:ao:aq:ar:as:at:au:aw:az:ba:bb:bd:be:bf:". "bg:bh:bi:bj:bm:bn:bo:br:bs:bt:bv:bw:by:bz:ca:cc:cf:cd:cg:ch:ci:". "ck:cl:cm:cn:co:cr:cs:cu:cv:cx:cy:cz:de:dj:dk:dm:do:dz:ec:ee:eg:". "eh:er:es:et:fi:fj:fk:fm:fo:fr:fx:ga:gb:gd:ge:gf:gh:gi:gl:gm:gn:". "gp:gq:gr:gs:gt:gu:gw:gy:hk:hm:hn:hr:ht:hu:id:ie:il:in:io:iq:ir:". "is:it:jm:jo:jp:ke:kg:kh:ki:km:kn:kp:kr:kw:ky:kz:la:lb:lc:li:lk:". "lr:ls:lt:lu:lv:ly:ma:mc:md:mg:mh:mk:ml:mm:mn:mo:mp:mq:mr:ms:mt:". "mu:mv:mw:mx:my:mz:na:nc:ne:nf:ng:ni:nl:no:np:nr:nt:nu:nz:om:pa:". "pe:pf:pg:ph:pk:pl:pm:pn:pr:pt:pw:py:qa:re:ro:ru:rw:sa:sb:sc:sd:". "se:sg:sh:si:sj:sk:sl:sm:sn:so:sr:st:su:sv:sy:sz:tc:td:tf:tg:th:". "tj:tk:tm:tn:to:tp:tr:tt:tv:tw:tz:ua:ug:uk:um:us:uy:uz:va:vc:ve:". "vg:vi:vn:vu:wf:ws:ye:yt:yu:za:zm:zr:zw:"; // country codes koennen folgende TLD`s vorangestellt sein $cTLDs = "com:net:org:edu:gov:mil:co:ne:or:ed:go:mi:"; $fail = 0; // wandelt in Kleinbuchstaben um $Addr = strtolower($Addr); // teilt die Adresse in user und domain Teile $UD = explode("@", $Addr); if (sizeof($UD) != 2 || !$UD[0]) $fail = 1; echo "$ud[0]"; echo "$ud[1]"; // teilt den domain Abschnitt $Levels = explode(".", $UD[1]); $sLevels = sizeof($Levels); if ($sLevels < 2) $fail = 1; // holt die TLD und ueberprueft die Länge $tld = $Levels[$sLevels-1]; $tld = ereg_replace("[>)}]$|]$", "", $tld); if (strlen($tld) < 2 || strlen($tld) > 3 && $tld != "arpa") $fail = 1; // ueberprueft TLD if ($Level && !$fail) { $Level--; if (!ereg($tld.":", $gTLDs) && !ereg($tld.":", $CCs)) $fail = 2; } // ueberprueft country code if ($Level && !$fail) { $cd = $sLevels - 2; $domain = $Levels[$cd].".".$tld; if (ereg($Levels[$cd].":", $cTLDs)) { $cd--; $domain = $Levels[$cd].".".$domain; } } } //end MailChek $fail = MailChek ($email,1) ; if ($fail != 0){ include ('error.php3'); exit; } else { include ('acknow.php3'); } //Log at database textfile - Daten werden in txt-Datei geschrieben $datum=date('Y-m-d H:i',time()); $zeile=$datum.'²'.$email.'²'.$news."\n"; $fp=fopen('news.txt','a'); fwrite($fp,$zeile,100); fclose($fp); //mySQL-Verbindung echo "<br>"; echo "<br>"; $sqlid=mysql_connect("localhost","****","******"); //Hier host, user und Passwort eintragen if (!$sqlid) die ("Kann Server nicht erreichen"); else echo 'Datenbank connect'; mysql_select_db("testdatenbank",$sqlid); //Die Datenbank 'newsletter' muss schon angelegt sein $sql="insert into newsletter (email, name, vname, gbt) values ('$email', '$name', '$vname', '$gbt')"; //ebenso die Tabelle 'email_adress' mysql_query ($sql,$sqlid); mysql_close($sqlid); //email to user mail ("admin@localhost", //Hier den Empfaenger eintragen "newsletter $news", //Hier steht die Betreff-Zeile "Hallo DREAMRIDER, $email hat den newsletter $news und zwar am $datum", //Hier der Text der mail "From:$email"); //Hier steht der Absender ?>[/PHP]Besonders den letzten Absatz... Ach ich weiß auch nicht, ich hätte nicht gedacht, dass das so schwer ist... [/QUOTE]
Bilder bitte
hier hochladen
und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Zitate einfügen…
Authentifizierung
Wenn ★ = 12, ◇ = 4 und die Hälfte von ★ zu ◇ addiert wird, was ist das Ergebnis?
Antworten
Start
Forum
Sonstiges
Webdesign, Webentwicklung & Programmierung
PHP, Javascript, jQuery, Ajax, nodeJS, MySQL...
Newsletter macht mich irre!
Oben