Lamer²: Email senden

Email senden mit PHP ist ja eigentlich das einfachste auf der Welt

mail($empfaenger, $name." - Kontaktformular", $nachricht, "From: ".$email)

$name = Feld vom Formular
$nachricht = Aufbereitete Nachricht
$email = Feld vom Formular

$empfänger lese ich aus einer DB aus.
$sql = "SELECT * FROM Tabelle WHERE id = '$id'";
if(!$query = mysql_query($sql, $db_conn))
{
 dberror();
}
$dat = mysql_fetch_array($query);
$empfaenger = $dat[email];
echo $empfaenger;

Wird richtig ausglesen (getestet mit echo)

Die Email wird aber nicht gesendet oder kommt nicht an.
Wenn ich aber
$empfaenger = "Hier die Email adresse";
per Hand eingebe funktioniert es.

Muss ich wenn ich die Email Adresse aus der DB auslesse noch was zusätzlich beachten?

greez Lamer²

  1. Hallo erstmal!

    $empfaenger = $dat[email];

    $empfaenger = $dat['email'];

    Gruß aus Berlin!
    eddi

    1. $empfaenger = $dat['email'];

      habe ich geändert. Kommt deswegen auch nix an.
      P.s. was bringt das '' eigentlich wenn ich fragen darf.

      1. hi,

        $empfaenger = $dat['email'];

        habe ich geändert. Kommt deswegen auch nix an.
        P.s. was bringt das '' eigentlich wenn ich fragen darf.

        Fragen darfst du - aber es wäre schön, wenn du dir die Grundlagen schon erst mal selber anschaust, damit du hier für sowas nicht erst fragen _musst_.

        Warum ist $foo[bar] falsch?

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
        1. funktioniert aber deswegen auch nicht.

  2. Hi,

    Email senden mit PHP ist ja eigentlich das einfachste auf der Welt

    sofern man weiss dass die Eingaben validiert werden muessen...

    $email = Feld vom Formular

    Vorsicht, wenn da sowas ankommt wie \ncc: spam@spam.de.... Du musst zwingend bestimmte Eingaben prüfen, andernfalls wird Dein Formular schnell zur Spamschleuder.

    $empfaenger = $dat[email];

    sollte da nicht ein indexwert erforderlich sein? Was gibt print_r($dat) aus?

    Gruesse, Joachim

    --
    Am Ende wird alles gut.
    1. Hi,

      Email senden mit PHP ist ja eigentlich das einfachste auf der Welt
      sofern man weiss dass die Eingaben validiert werden muessen...

      Wie faldiert was meinst du damit?

      $email = Feld vom Formular
      Vorsicht, wenn da sowas ankommt wie \ncc: spam@spam.de.... Du musst zwingend bestimmte Eingaben prüfen, andernfalls wird Dein Formular schnell zur Spamschleuder.

      Bis jetzt kontrolliere ich nur ob was drin steht oder nicht.
      Werde später dann schon prüfen ob das @ zeichen vorhanden ist und der . am schluss. Kontrollieren ob es diese Email gibt oder nicht kann man ja nich.

      $empfaenger = $dat[email];
      sollte da nicht ein indexwert erforderlich sein? Was gibt print_r($dat) aus?

      Was sollte da noch für ein Index Wert erforderlich sein. Ich lesse ja nur einen Datensatz ein (oben in der SQL anweisung WHERE ID.....)

      print_r wir dann warscheinlich alle spalten ausgeben.

      echo $empfaenger; gibt ja die richtige Email adresse zurück.

  3. Moin Lamer²,

    $empfaenger = $dat[email];
    echo $empfaenger;

    u.U. hast Du in der Variable White Spaces drin.
    Versuche mal $empfaenger = trim($dat['email']);

    regds
    Mike©

    --
    Freunde kommen und gehen. Feinde sammeln sich an.
    1. Versuche mal $empfaenger = trim($dat['email']);

      habe ich versucht fehlanzeige.