#1 23. Dezember 2009 Formular schickt keine Emails Hallo, ich soll für einen Kumpel ein Formular erstellen. Habe es über einen Generator erstellt. Aber irgendwie kommen keine Emails aus dem Formular aus an. Habe das Ding auf zwei verschiedenen Webhostern probiert. (CW-Surf und Funpic) Wisst ihr vllt. woran das liegt? Mfg Matze PHP: <? phperror_reporting ( E_ALL ); $error = false ; $errors = array(); $receiver = 'gana@trash-mail.com' ; function check_email ( $string ) { // RegEx created by Myle Ott, found at regexlib.com return preg_match ( '/^([a-zA-Z0-9_\-])+(\.([a-zA-Z0-9_\-])+)*@((\[(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5]))\]))|((([a-zA-Z0-9])+(([\-])+([a-zA-Z0-9])+)*\.)+([a-zA-Z])+(([\-])+([a-zA-Z0-9])+)*))$/i' , $string );} function check_onlynumbers ( $string ) { return preg_match ( '/^[0-9,.]{1,}$/' , $string );} function check_onlyletters ( $string ) { return preg_match ( '/^[a-zA-ZäöüÄÖÜß]{1,}$/' , $string );} function send_email ( $subject , $body , $receiver , $html = 1 ) { if ( $html != 1 ) { $body = str_replace ( '<br />' , "\n" , $body ); $body = str_replace ( '<br>' , "\n" , $body ); $body = strip_tags ( $body ); } $subject = str_replace ( '\n' , '' , $subject ); $subject = str_replace ( '\r' , '' , $subject ); if ( $html ) { $header = 'MIME-Version: 1.0' . "\n" ; $header .= 'Content-type: text/html; charset=iso-8859-15' . "\n" ; $header .= 'From: ' . $receiver . ' <' . $receiver . '>' . "\n" ; } else { $header = 'MIME-Version: 1.0' . "\n" ; $header .= 'From: ' . $receiver . ' <' . $receiver . '>' . "\n" ; } if ( mail ( $receiver , $subject , $body , $header )) { return true ; } else { return false ; }} function array_stripslashes (& $var ) { if( is_string ( $var )) { $var = stripslashes ( $var ); } else { if( is_array ( $var )) foreach( $var as $key => $value ) array_stripslashes ( $var [ $key ]); }} if( get_magic_quotes_gpc ()){ array_stripslashes ( $_GET ); array_stripslashes ( $_POST ); array_stripslashes ( $_REQUEST ); array_stripslashes ( $_COOKIE );} if (!empty( $_POST )) { // Prüfung für das Feld "Schule, Freunde, Haus, Hobbys, Souvenir" $errors [ 'Augustin' ] = null ; if (empty( $_POST [ 'Augustin' ])) { $error = true ; $errors [ 'Augustin' ] = ' class="error"' ; } // Prüfung für das Feld "Schule, Freunde, Haus," $errors [ 'Theodor' ] = null ; if (empty( $_POST [ 'Theodor' ])) { $error = true ; $errors [ 'Theodor' ] = ' class="error"' ; } // Prüfung für das Feld "Schule, Freunde, Souvenir" $errors [ 'Dominique' ] = null ; if (empty( $_POST [ 'Dominique' ])) { $error = true ; $errors [ 'Dominique' ] = ' class="error"' ; } // Prüfung für das Feld "Freunde, Schule, Wohnung" $errors [ 'Mandy' ] = null ; if (empty( $_POST [ 'Mandy' ])) { $error = true ; $errors [ 'Mandy' ] = ' class="error"' ; } // Prüfung für das Feld "Schule, Freunde, Wohnort" $errors [ 'Kevin' ] = null ; if (empty( $_POST [ 'Kevin' ])) { $error = true ; $errors [ 'Kevin' ] = ' class="error"' ; } } $_textarea_Augustin = (!empty( $_POST [ 'Augustin' ]) ? htmlspecialchars ( $_POST [ 'Augustin' ], ENT_QUOTES , 'iso-8859-15' ) : null ); $_textarea_Theodor = (!empty( $_POST [ 'Theodor' ]) ? htmlspecialchars ( $_POST [ 'Theodor' ], ENT_QUOTES , 'iso-8859-15' ) : null ); $_textarea_Dominique = (!empty( $_POST [ 'Dominique' ]) ? htmlspecialchars ( $_POST [ 'Dominique' ], ENT_QUOTES , 'iso-8859-15' ) : null ); $_textarea_Mandy = (!empty( $_POST [ 'Mandy' ]) ? htmlspecialchars ( $_POST [ 'Mandy' ], ENT_QUOTES , 'iso-8859-15' ) : null ); $_textarea_Kevin = (!empty( $_POST [ 'Kevin' ]) ? htmlspecialchars ( $_POST [ 'Kevin' ], ENT_QUOTES , 'iso-8859-15' ) : null ); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" /><title>Umfraget</title> <link rel="stylesheet" type="text/css" href="css.css"></head><body> <?php if ( $error || empty( $_POST )) { ?> <form action="<?php echo htmlspecialchars ( $_SERVER [ 'PHP_SELF' ], ENT_QUOTES , 'iso-8859-15' ); ?>" method="post"><fieldset><legend>Umfrage Namensherkunft</legend><div class="formulargenerator-4webmaster"> <?php if ( $error ) { ?> <div class="error_msg">Bitte alle mit * markierten Felder ausfüllen.</div> <?php } ?><label for="Augustin"<?php echo !empty( $errors [ 'Augustin' ]) ? $errors [ 'Augustin' ] : null ; ?>>Augustin*</label><textarea tabindex="1" id="Augustin" name="Augustin" rows="5" cols="20"><?php echo $_textarea_Augustin ; ?></textarea><label for="Theodor"<?php echo !empty( $errors [ 'Theodor' ]) ? $errors [ 'Theodor' ] : null ; ?>>Theodor *</label><textarea tabindex="2" id="Theodor" name="Theodor" rows="5" cols="20"><?php echo $_textarea_Theodor ; ?></textarea><label for="Dominique"<?php echo !empty( $errors [ 'Dominique' ]) ? $errors [ 'Dominique' ] : null ; ?>>Dominique *</label><textarea tabindex="3" id="Dominique" name="Dominique" rows="5" cols="20"><?php echo $_textarea_Dominique ; ?></textarea><label for="Mandy"<?php echo !empty( $errors [ 'Mandy' ]) ? $errors [ 'Mandy' ] : null ; ?>>Mandy *</label><textarea tabindex="4" id="Mandy" name="Mandy" rows="5" cols="20"><?php echo $_textarea_Mandy ; ?></textarea><label for="Kevin"<?php echo !empty( $errors [ 'Kevin' ]) ? $errors [ 'Kevin' ] : null ; ?>>Kevin *</label><textarea tabindex="5" id="Kevin" name="Kevin" rows="5" cols="20"><?php echo $_textarea_Kevin ; ?></textarea><div style="text-align: center; margin: 5px;"> <input type="submit" value="Absenden" /></div></fieldset></form> <?php } else { $body = '' ; $body .= 'Augustin:<br>' . htmlspecialchars (!empty( $_POST [ 'Augustin' ]) ? $_POST [ 'Augustin' ] : '' , ENT_QUOTES , 'iso-8859-15' ). '<br><br>' ; $body .= 'Theodor:<br>' . htmlspecialchars (!empty( $_POST [ 'Theodor' ]) ? $_POST [ 'Theodor' ] : '' , ENT_QUOTES , 'iso-8859-15' ). '<br><br>' ; $body .= 'Dominique:<br>' . htmlspecialchars (!empty( $_POST [ 'Dominique' ]) ? $_POST [ 'Dominique' ] : '' , ENT_QUOTES , 'iso-8859-15' ). '<br><br>' ; $body .= 'Mandy:<br>' . htmlspecialchars (!empty( $_POST [ 'Mandy' ]) ? $_POST [ 'Mandy' ] : '' , ENT_QUOTES , 'iso-8859-15' ). '<br><br>' ; $body .= 'Kevin:<br>' . htmlspecialchars (!empty( $_POST [ 'Kevin' ]) ? $_POST [ 'Kevin' ] : '' , ENT_QUOTES , 'iso-8859-15' ). '<br><br>' ; if( send_email ( 'Umfrage Namensherkunft' , $body , $receiver )) { ?> <h1>Umfrage Namensherkunft</h1> <p>Vielen Dank für Ihre Abstimmung.</p> <? } else { ?> <h1>Umfrage Namensherkunft</h1> <p>Das Formular konnte leider nicht abgesendet werden. Bitte versuchen Sie es später noch einmal.</p> <? }} ?></body> </html> + Multi-Zitat Zitieren
#2 23. Dezember 2009 AW: Formular schickt keine Emails Bei mir funktioniert es. Du hast wohl keinen Mailserver. Ich kenn jetzt leider die Provider nicht, aber ich geh mal davon aus, dass du eben dort keinen zur Verfügung hast. + Multi-Zitat Zitieren
#3 23. Dezember 2009 AW: Formular schickt keine Emails Kennst du einen guten kostenlosen Provider mit Mailserver? Ich hatten auf den beiden Servern jeweils ein CMS installiert. Dort hat die KOntaktformularfunktion auch funktioniert. + Multi-Zitat Zitieren
#4 23. Dezember 2009 Zuletzt von einem Moderator bearbeitet: 15. April 2017 AW: Formular schickt keine Emails Leider nicht, sorry, ich benutze keinen kostenlosen Provider. Ich weiß nur, dass bei one.com es echt sehr günstige Server gibt (sehe grade zur Zeit 1 Jahr gratis), bin selbst nicht dort, aber für niedrige Bedürfnisse ist es sicher nicht schlecht. Ich weiß halt nur, dass aufwändigere Webanwendungen wie TYPO3 nicht sehr gut auf one.com laufen (zumindest bei den günstigen Paketen). Ansonsten gibts ja hier im Forum eine Liste: [Webhosting] Free-Webspace / Free-Hoster - RR:Board + Multi-Zitat Zitieren
#5 23. Dezember 2009 AW: Formular schickt keine Emails Lass in der Mail den Absender mal weg, freehoster blocken emails meist gleich, wenn der Absender auf eine andere Domain zb. auflöst. + Multi-Zitat Zitieren
#6 23. Dezember 2009 AW: Formular schickt keine Emails Da ist doch kein Absendername oder Emailadressfeld?! + Multi-Zitat Zitieren
#7 23. Dezember 2009 AW: Formular schickt keine Emails PHP: $header .= 'From: ' . $receiver . ' <' . $receiver . '>' . "\n" ; einfach mal beide Einträge dort auskommentieren PHP: //$header .= 'From: '.$receiver.' <'.$receiver.'>'."\n"; + Multi-Zitat Zitieren
#8 23. Dezember 2009 AW: Formular schickt keine Emails Habe das mal versucht. Habe noch zwei weitere Hoster benutzt. Aber irgendwie will dieses scheiß Sript nicht laufen... + Multi-Zitat Zitieren
#9 23. Dezember 2009 AW: Formular schickt keine Emails probiere mal eine email an dich selber zu senden. wenn in spätestens 2 min nichts ankommt, dann ist diese funktion vom hoster gesperrt. PHP: <? php mail ( 'deine@mail.com' , 'Mein Betreff' , 'das ist ein text' ); ?> + Multi-Zitat Zitieren
#10 23. Dezember 2009 AW: Formular schickt keine Emails habe keine einzige zuzrückbekommen :angry: + Multi-Zitat Zitieren
#11 24. Dezember 2009 AW: Formular schickt keine Emails So bisschen gegooglet funpic.de hat seit Monaten probleme mit dem Mail-Server. Würd mal im CW-Surf Forum nachschaun ob da ein ähliches problem vorliegt.. Das die Mailfunktion von Freehostern gesperrt wird ist mir nicht bewusst.. Noch nie gehabt. + Multi-Zitat Zitieren
#12 24. Dezember 2009 AW: Formular schickt keine Emails Hast Du vllt. eine Freehoster-Adresse für mich, bei denen die Mailfunktion funktioniert? Danke und Gruß Matze Edit: gibt es noch eine andere Möglichkeit ausser mail() ein solches Formular (ohne Outlook etc.) zu versenden? + Multi-Zitat Zitieren
#13 24. Dezember 2009 AW: Formular schickt keine Emails Die Frage ist was du benötigst. Ob PHP5 oder PHP4 ob MySQL, darf er Werbung haben ect. ansich sollte jeder Freehoster mail() unterstützen. Wahlweise einfach mal bei google nach Freehostern suchen und sich einfach mal ein Account machen. Schau dir ansonsten mal Pytal an. Hab ich früher immer gute Erfahrungen mit gemacht. Ansonsten gibt es aber leider keine andere Möglichkeit eine E-Mail zu verschicken jedenfalls nicht über php. Mit Perl zum beispiel wäre das wieder was anderes. + Multi-Zitat Zitieren