Kontaktformular

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
nuunuu
Mitglied
Beiträge: 421
Registriert: 21.10.2005 17:55
Wohnort: Rodgau
Kontaktdaten:

Beitrag von nuunuu »

tja.... habs eben ausprobiert.... hoffe mal, ich hab alles richtig gemacht, aber ich bekomme keine mail...

Bye nuunuu
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo,
hast Du das Skript aus dem von mir gepostetem Link genommen?

Gruß Martin
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core
Benutzeravatar
nuunuu
Mitglied
Beiträge: 421
Registriert: 21.10.2005 17:55
Wohnort: Rodgau
Kontaktdaten:

Beitrag von nuunuu »

ja, habe ich!

Bye nuunuu

P.S.: Hier der Code:

Code: Alles auswählen

<!--
  <h1>Abgesichertes E-Mail-Formular</h1>
  <p>Das Skript überprüft alle Formulardaten, die der Anwender eingibt. Für eventuelle Fehler können wir keine Haftung übernehmen. Die Fehlerbehandlung mit die()-Anweisungen ist nicht besonders benutzerfreundlich.</p>
-->
  <?php
 //Gib Fehler und Warnungen aus
 error_reporting(E_ALL);
 //Deutschsprachige Umgebung, damit die
 //regulären Ausdrücke auch Umlaute etc. erkennen
 setlocale(LC_ALL, 'de_DE');
 //Erzeuge einen zufällig aussehenden Zugangscode aus dem Datum ...
 $code = chr((date("y") + 7) % 10 + date("m") + 68 + (date("m") % 2) * 32) . chr((date("d") + (date("d") %2)) / 2 + 66 + (37 * (date("d") %2)));
 //... den der Anwender mittels verborgenem Eingabefeld übergibt.
 //So lässt sich das Gros der skriptgesteuerten Angriffe von
 //vornherein abblocken.
 //Wurde das Formular abgeschickt?
 //Falls ja: Daten prüfen und versenden
 if(isset($_POST['los'])) {
  if(!isset($_POST['code']) || $_POST['code'] != $code) die('Mailcode fehlt!');
  //Liste der zu überprüfenden Formularfelder:
  //'absender' muss genau eine Mailadresse sein,
  //'betreff' ist ein mindestens drei Zeichen langer Text ohne Umbruch,
  //'text' muss zehn Zeichen lang sein.
  $pruefung = array(
   'absender' => '/^[\w.+-]{2,}\@[\w.-]{2,}\.[a-z]{2,6}$/',
   'betreff' => '/^[[:print:]]{3,}$/',
   'text' => '/^[[:print:][:space:]]{10,}$/'
  );
  //Durchlaufe alle Formulardaten:
  foreach($_POST as $parameter => $wert) {
   //Formularfelder, die in $pruefung stehen,
   //müssen in die oben definierten Muster passen
   if(isset($pruefung[$parameter])) {
    if(!preg_match($pruefung[$parameter], $wert)) die('Probleme mit Feld ' . $parameter . ': ' . $wert);
   } else {
    //Der Rest wird weggeworfen.
    unset($_POST[$parameter]);
   }
  }
  //Prüfe, ob die Absenderadresse einem gültigen MX-Host angehört
  //Zu jeder Domain in einer Mailadresse (nach dem @-Zeichen)
  //sollte ein Mail Exchange Resource Record (MX-RR) im Domain Name
  //System (DNS) eingetragen sein. Die MX-Hosts versenden die E-Mail
  //per SMTP. getmxrr() schreibt MX-Hosts in das Array $mxhosts
  //ACHTUNG: Dieser Befehl ist nur auf Unix-Maschinen implementiert,
  //unter anderen Betriebssystemen ist die Zeile zu streichen!
  if(!getmxrr(substr(strstr($_POST['absender'], '@'), 1), $mxhosts)) die("Konnte keine gültige Domain für " . $_POST['absender'] . " finden!");
  //Die Formulardaten sind ok -- der Mailversand wird vorbereitet:
  //mail() erwartet Empfänger, Betreff, Text und weitere Kopfdaten
  if(mail('DennisKlein@gmx.net@gmx.net', $_POST['betreff'], $_POST['text'], "From:" . $_POST['absender'])) {
   //Es hat geklappt: Bestätigung ausgeben
   echo "<p>Nachricht von " . $_POST['absender'] . " an Administrator gesendet!</p>";
  } else {
   //Irgendwas ist schiefgelaufen :-(
   echo "<p>Nachricht konnte nicht gesendet werden!</p>";
  }
 } else {
 //Es wurden keine Formulardaten übergeben ->
 //Gib einen HTML-Block mit dem Formular aus.
?>
  <form method="post" action="">
   <table>
    <tbody>
     <tr>
      <td>
       <label for="name">Name:</label><br/>
      </td>
      <td>
       <input id="absender" name="absender"/>
      </td>
     </tr>
	  <tr>
		<td>
       <label for="absender">Email-Adresse::</label><br/>
      </td>
      <td>
       <input id="absender" name="absender"/>
      </td>
     </tr>
     <tr>
      <td>
       <label for="betreff">Betreff:</label><br/>
      </td>
      <td>
       <input id="betreff" name="betreff"/>
      </td>
     </tr>
     <tr>
      <td>
       <label for="text">Nachricht:</label><br/>
      </td>
      <td>
       <textarea id="text" name="text" rows="3" cols="40">
       </textarea>
       <input type="hidden" id="code" name="code" value="<?php echo($code); ?>"/>
      </td>
     </tr>
     <tr>
      <td></td>
      <td>
       <input type="submit" name="los" value="Abschicken!"/>
      </td>
     </tr>
    </tbody>
   </table>
  </form>
<?php
 //Schließt die if-else-Schleife
 }
?>
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo,

DennisKlein@gmx.net@gmx.net

Gruß Martin
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core
Benutzeravatar
nuunuu
Mitglied
Beiträge: 421
Registriert: 21.10.2005 17:55
Wohnort: Rodgau
Kontaktdaten:

Beitrag von nuunuu »

omg....
ok, hab mir den Code auch net mehr angesehen...

Bye nuunuu

€dit: also, jetzt klappt es!!!
THX martin!!!
Benutzeravatar
nuunuu
Mitglied
Beiträge: 421
Registriert: 21.10.2005 17:55
Wohnort: Rodgau
Kontaktdaten:

Beitrag von nuunuu »

komisch. es klappt net mehr! ich hab genau das selbe Formular auf 2 Seiten eingefügt. auf der einen geht es, auf der anderen nicht. warum???

Bye nuunuu
Benutzeravatar
nuunuu
Mitglied
Beiträge: 421
Registriert: 21.10.2005 17:55
Wohnort: Rodgau
Kontaktdaten:

Beitrag von nuunuu »

komisch. es klappt net mehr! ich hab genau das selbe Formular auf 2 Seiten eingefügt. auf der einen geht es, auf der anderen nicht. warum???
Und auf der Seite, auf der es gehen soll, geht es eben net.

Bye nuunuu
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo,
alles beim selben Provider?

Gruß Martin
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core
Benutzeravatar
nuunuu
Mitglied
Beiträge: 421
Registriert: 21.10.2005 17:55
Wohnort: Rodgau
Kontaktdaten:

Beitrag von nuunuu »

nein, das eine, wo es klappt is bei funpic, und bei pytal klappt es leider nicht...

Bye nuunuu
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo,
und was sagen die von pytal?
PHP mail() Funktion nicht nutzbar?

Nutzt Du jeweils die selbe Versender EMailadresse für alle drei Installationen?

Gruß Martin
Zuletzt geändert von Martin Truckenbrodt am 15.12.2005 00:36, insgesamt 1-mal geändert.
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core
Antworten

Zurück zu „Coding & Technik“