Diese Anzeige ist nur für
Nicht-Mitglieder sichtbar!

Jetzt kostenlos registrieren

E-Mail aus PhP Script versenden

Fragen zum Thema PHP können hier gestellt werden

Moderatoren: Basti, Guillermo, Andreas W.

E-Mail aus PhP Script versenden

Beitragvon FarCry65 am 17.06.2011, 06:13

Code: Alles auswählen
<!DOCTYPE html>
<html>
<head>
<title>Support Formular</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta name="robots" content="noindex,nofollow">

<style type="text/css">

body, textarea {
  font-family: Verdana, Sans-Serif;
  font-size: 14px;
  color: #000000;
}
label {
  cursor: pointer;
  display: inline-block;
  width: 140px;
}
input, select {
  margin-top: 5px;
}
img, input[type='image'] {
  vertical-align: middle;
}
.pflichtfeld {
  color: #EE0000;
  border: 0px;
}
.hintergrund {
  color: #000000;
  font-weight: bold;
  background-color: #2C8A34;
  padding: 3px;
  width: 490px;
  margin: auto;
  text-align: left;
}
.danke, .danke a {
  color: #000000;
  text-align: center;
  margin-top: 200px;
  padding: 10px;
}
</style>

</head>
<body>

<?php



$mailto = "Kim.Benker@web.de";


$url = "http://www.hdro-advantage.de.gp/index.php";


$eingabefehler = "";
$anrede = isset($_POST["anrede"]) ? $_POST["anrede"] : "";
$anredeCk = $_POST["anrede"] == "Frau" ? " checked='checked'" : "";
$name = isset($_POST["name"]) ? $_POST["name"] : "";
$feld1 = isset($_POST["feld1"]) ? $_POST["feld1"] : ""; // "Server"
$mailfrom = isset($_POST["mailfrom"]) ? $_POST["mailfrom"] : "";
$betreff = isset($_POST["betreff"]) ? $_POST["betreff"] : "";
$nachricht = isset($_POST["nachricht"]) ? $_POST["nachricht"] : "";


$formular = "<form action='" . $_SERVER["SCRIPT_NAME"] . "' method='post'>
<div class='hintergrund'>
<h2>Support Formular</h2>
Bitte benutzen sie dieses Support Formular nur bei Problemen mit der Website oder dem Forum.<br><br> <br><span class='pflichtfeld'><!-- Fehleranzeige --></span> <br>
  <label>Anrede:</label>
  <input type='radio' name='anrede' value='Herr' checked='checked' id='Herr'><label for='Herr' style='width: 50px;'>Herr</label>
  &nbsp; <input type='radio' name='anrede' value='Frau'" . $anredeCk . " id='Frau'><label for='Frau' style='width: 50px;'>Frau</label>
  <br>
  <label for='Name'>Name: <span class='pflichtfeld'>*</span></label>
  <input type='text' size='35' name='name' value='" . $name . "' id='Name'>
  <br>
  <label for='Feld1'>Server: <span class='pflichtfeld'>*</span></label>
  <input type='text' size='40' name='feld1' value='" . $feld1 . "' id='Feld1'>
  <br>
  <label for='Email'>E-Mail: <span class='pflichtfeld'>*</span></label>
  <input type='text' size='45' name='mailfrom' value='" . $mailfrom . "' id='Email'>
  <br>
  <label for='Betreff'>Betreff: <span class='pflichtfeld'>*</span></label>
  <input type='text' size='50' name='betreff' value='" . $betreff . "' id='Betreff'>
  <br>
  <label for='Nachricht'>Nachricht: <span class='pflichtfeld'>*</span></label><br>
  <textarea name='nachricht' rows='6' cols='70' id='Nachricht'>" . $nachricht . "</textarea>
  <br>
  <br>&nbsp; <span class='pflichtfeld'>*</span> <small>Bitte alle Pflichtfelder ausfüllen!</small> &nbsp; &nbsp; &nbsp; &nbsp;
     <input type='image' src='images/absenden.gif' name='sendung' title='Absenden'>
  </div>
</form>";

if (isset($_POST["sendung_x"])) {

if (strlen($name) <= 2) {$eingabefehler .= "&bull; Name fehlt!<br>";}
if ($feld1 == "") {$eingabefehler .= "&bull; Server fehlt!<br>";}
if (!preg_match("/^([_a-z0-9-äöüß])(([-_a-z0-9-äöüß._])*([_a-z0-9-äöüß]))*\@([_a-z0-9-äöüß])(([_a-z0-9-äöüß-])*([_a-z0-9-äöüß]))+(\.([_a-z0-9-äöüß])([-a-z0-9_-])?([_a-z0-9-äöüß])+)+$/i", $mailfrom)) {
  $eingabefehler .= "&bull; Fehler in der E-Mail-Adresse!<br>";
}
if (strlen($betreff) <= 6) {$eingabefehler .= "&bull; Der Betreff " . ((strlen($betreff) == 0) ? " fehlt" : " ist zu kurz") . " (min. 7 Zeichen)!<br>";}
if (strlen($nachricht) <= 19) {$eingabefehler .= "&bull; Die Nachricht " . ((strlen($nachricht) == 0) ? " fehlt" : " ist zu kurz") . " (min. 20 Zeichen)!<br>";}
if ($eingabefehler == "") {
  $text = "Datum: " . date("d.m.Y H:i") . "\n
   Anrede: $anrede \n
   Name: $name \n
   Server: $feld1 \n
   E-Mail: $mailfrom \n
   Betreff: $betreff \n
   Nachricht: $nachricht \n\n
   ";
  @mail($mailto , $betreff . " [Support Formular]", $text, "From: " . $mailfrom);

  echo "<p class='hintergrund danke'>";
  echo "Vielen Dank " . $anrede . " " . $name . ", die Nachricht wurde gesendet.<br><br>";

  echo "<a href=\"" . $url . "\" target=\"_top\">Weiter zur Startseite</a></p>";
}
else {

  echo str_replace("<!-- Fehleranzeige -->", "<strong>Die Nachricht wurde aus folgendem Grund nicht gesendet:</strong><br>$eingabefehler", $formular);
}
}
else {

echo $formular;
}
?>

</body>
</html>


Diesen Code benutze ich.
Habe das schon ewig nicht mehr gemacht und wollte mal wissen ob der richtig ist.
MFG FarCry
FarCry65
Mitglied
 
Beiträge: 6
Registriert: 27.05.2011, 13:54
Diese Anzeige ist nur für
Nicht-Mitglieder sichtbar!
 
Jetzt kostenlos registrieren

Re: E-Mail aus PhP Script versenden

Beitragvon tomtom am 17.06.2011, 18:03

Ohne deinen Code jetzt komplett studiert zu haben:

Kriegst du denn eine Fehlermeldung oder willst du eine grundsätzliche Aussage darüber ob es richtig ist?

Vorweg ist bei solchen Sachen wirklich in Punkto Sicherheit darauf zu achten das du die per POST/GET übermittelten Daten überprüfst und/oder gegenfalls abänderst.
Zum Beispiel die PHP-Funktion strip_tags benutzt um sicherzugehen das in deinen POST Daten keine HTML und PHP Tags sind, die evtl. Schaden anrichten könnten.

Ich hoffe ich konnte dir ein wenig helfen und habe jetzt nicht totalen Mist erzählt...

Gruß
„Klug ist nicht, wer keine Fehler macht. Klug ist der, der es versteht, sie zu korrigieren.“ ( Lenin )
Benutzeravatar
tomtom
Mitglied
 
Beiträge: 171
Registriert: 07.06.2009, 17:11
Wohnort: Hagen

Re: E-Mail aus PhP Script versenden

Beitragvon FarCry65 am 13.08.2011, 19:26

ja danke
ich wollte damals
ne antwort ob es generell richtig ist
weil pop3 fach war angelegt und alles richtig eingestellt.
habe keine fehlermeldung bekommen nur damals ging es nicht
aber lag weder an mir noch code / anbieter hatte da iwas verzapft keine ahnug was da genau war geht jetzt aber alles
und html / php macht da keine probleme / etwas kaputt :D


mfg Kim
FarCry65
Mitglied
 
Beiträge: 6
Registriert: 27.05.2011, 13:54


Zurück zu PHP

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast