Ergebnis 1 bis 9 von 9

Thema: Mailfehler... :-?

  1. #1
    TP-Member Avatar von Ironwhistle
    Registriert seit
    May 2005
    Ort
    Eburon
    Beiträge
    84

    Mailfehler... :-?

    Quälgeist no. 1 hat schon wieder eine Frage...

    Ich will einen kleinen Newsletter schreiben, aber irgendwas klappt da nicht so wie es klappen sollte....

    Code:
    <html>
    <head>
     <title>Newsletter Grendelmoor</title>
    </head>
    <body>
    <?php
    
    // Liste auslesen
    $fp = "newsletter.mar";
    if ($datei = fopen($fp, "r"))
     {
     while (!feof($datei))
     {
      $empfaenger_name =fgets($datei);
     }
    
    //Sender
    $sender_name = "Newsletter grendelmoor";
    $sender_mail = "news@grendelmoor.de";
    $reply_mail = "news@grendelmoor.de";
    
    // Empfänger
    $empfaenger_mail ="$empfaenger_name";
    
    // Nachricht
    
    $nachricht = "$message";
    
    // Betreff
    
    $betreff = "Newsletter Grendelmoor";
    
    // Header
    $headers .=From: "$sender_name." <".$sender_mail.">\r\n";
    $headers .=Reply-to: ".$sender_name." <".$reply_mail.">\r\n";
    $headers .=X-Mailer: PHP: ".phpversion();
    
    // Mail senden
    if (mail($empfaenger_mail, $betreff, $message, $headers))
       {
       echo "News verschickt an folgende Personen <br>$empfaenger_mail</b>";
       }
    else
       {
       echo "Folgende Empfänger konnten nicht erreicht werden:<br>
             $empfaenger_mail";
        }
    Die newsletter.mar sieht dabei folgendermaßen aus:

    mail@domain.de,mail@domain.com,etc.etc.etc...

    Kann mir jemand helfen, oder ist bei mir schon Hopfen und Malz verloren? gg*

    Grüße
    Ingo
    Explantierte Gedanken
    StGB SS328 Absatz 2.3: Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht

  2. #2
    TP-Veteran Avatar von Dome
    Registriert seit
    Feb 2004
    Ort
    Stuttgart
    Beiträge
    1.289
    So genau kenn ich mich damit auch net aus, aber ich glaube in zeile 34 und so würde ich das so ändern:
    PHP-Code:
    // Header
    $headers .= 'From: "$sender_name." <".$sender_mail.">\r\n';
    $headers .= 'Reply-to: ".$sender_name." <".$reply_mail.">\r\n';
    $headers .= "X-Mailer: PHP: ".phpversion(); 
    und muss da nicht noch was hin, das die datei schließt? sowie das "?>" oder irre ich mich da?
    Gruß
    Dome
    __________________
    Um mal auf das Renomee-System aufmerksam zu machen: Klick
    TP Battlebay: www.tp-battlebay.de.ki (endlich wieder Online!)

  3. #3
    TP-Veteran Avatar von Dome
    Registriert seit
    Feb 2004
    Ort
    Stuttgart
    Beiträge
    1.289
    Ich habe dies so abgeändert:

    PHP-Code:
    <html>
    <head>
     <title>Newsletter Grendelmoor</title>
    </head>
    <body>
    <?php

    // Liste auslesen
    $fp "newsletter.mar";
    if (
    $datei fopen($fp"r"))
     {
     while (!
    feof($datei))
     {
      
    $empfaenger_name =fgets($datei);
     }

    //Sender
    $sender_name "Newsletter grendelmoor";
    $sender_mail "news@grendelmoor.de";
    $reply_mail "news@grendelmoor.de";

    // Empfänger
    $empfaenger_mail "$empfaenger_name";

    // Nachricht

    $nachricht "$message";

    // Betreff

    $betreff "Newsletter Grendelmoor";

    // Header
    $headers .= 'From: "$sender_name." <".$sender_mail.">\r\n';
    $headers .= 'Reply-to: ".$sender_name." <".$reply_mail.">\r\n';
    $headers .= "X-Mailer: PHP: ".phpversion();

    // Mail senden
    if (mail($empfaenger_mail$betreff$message$headers)){
       echo 
    "News verschickt an folgende Personen <br>$empfaenger_mail</b>";
       }
    else{
       echo 
    "Folgende Empfänger konnten nicht erreicht werden:<br>
             $empfaenger_mail"
    ;
       }
       
       

    ?>
    </body>
    und dann die Fehlermeldung: "Parse error: syntax error, unexpected $end in c:\programme\e-novative\WAMP\www\newsletter.php on line 50"
    Gruß
    Dome
    __________________
    Um mal auf das Renomee-System aufmerksam zu machen: Klick
    TP Battlebay: www.tp-battlebay.de.ki (endlich wieder Online!)

  4. #4
    TP-Special Mod Avatar von steffenk
    Registriert seit
    Feb 2005
    Ort
    Haan / NRW
    Beiträge
    12.869
    kein Wunder, Du hast auch eine } vergessen. Wenn Du immer syntaktisch einrücken würdest, dann würdest Du es auch sofort sehen.
    PHP-Code:
    $fp "newsletter.mar"
    if (
    $datei fopen($fp"r")) 

        while (!
    feof($datei)) 
        { 
          
    $empfaenger_name =fgets($datei); 
        } 

    Sowas kann man erst machen, wenn die Variable schon einen Wert hat:
    $headers .= ...
    Also entweder am Anfang $headers = oder vorher $headers="";

    das wird nicht interpretiert:
    $headers .= 'From: "$sender_name." <".$sender_mail.">\r\n';

    PHP parst nur Variablen innerhalb von "", also:
    $headers .= "From: $sender_name <$sender_mail>\r\n";

    Auch nur so werden die Steuerzeichen \r\n umgesetzt.

    TYPO3 · MySQLDumper · dislabs
    ·
    manche Mühlen mahlen schneller ...
    "Ich habe Rücken"
    Horst Schlämmer

  5. #5
    TP-Member Avatar von Ironwhistle
    Registriert seit
    May 2005
    Ort
    Eburon
    Beiträge
    84
    ??

    Weia, das war peinlich...

    Danke
    Explantierte Gedanken
    StGB SS328 Absatz 2.3: Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht

  6. #6
    TP-Member Avatar von Ironwhistle
    Registriert seit
    May 2005
    Ort
    Eburon
    Beiträge
    84
    Ich habs nochmal überarbeitet - alles läuft reibungslos...
    ...naja, fast...

    Anstelle der Mailadresse kommt dauernd "www daemon apache" als Absendername. Ich weis das ich 'nen Apache habe, das müssen die Leute aber nicht wissen....

    Code:
    <html>
    
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    </head>
    
    <body>
    <form method="POST">
    <input type="hidden" name="empfaenger" value=" <?
    
        $fp = "newsletter.mar";
        if ($_mail = fopen($fp, "r"))
           {
           while (!feof($_mail))
            {
            $zeichen =fgets($_mail);
            echo "$zeichen";
            }
           } ?>">
    
    <textarea rows="9" name="message" cols="35">
    </textarea><br>
    <input type="submit" value="Abschicken" name="send">
    </form>
    <?
    # Senderdaten
    $sender_name = "newsletter Grendelmoor";
    $sender_mail = "news@grendelmoor.de";
    $reply_mail = "info@grendelmoor.de";
    
    # Empfängerdaten
    $kopien = "$empfaenger";
    
    # Betreff - Überschrift
    $betreff = "newsletter Grendelmoor";
    
    # Nachrichtentext
    $nachricht = "$message";
    
    # Mailheader
    $headers .= "From: ".$sender_name." <".$sender_mail.">\r\n";
    $headers .= "Reply-To: ".$sender_name." <".$reply_mail.">\r\n";
    $headers .= "Bcc: ".$kopien."\r\n";
    
    
    # Mail senden
    if ($send)
     {
       if (mail($kopien, $betreff, $nachricht))
          {
            echo "Der Newsletter wurde an folgende Adressen verschickt:<br><i>$kopien</i>";
          }
            else
          {
            echo "Folgende Adressen konnten nicht angesprochen werden:<br>";
            echo "$kopien";
          }
      }
    ?>
    
    
    
    </body>
    
    </html>
    Wenn mir nochmal jemand einen Tipp geben könnte?

    Gracias...
    Explantierte Gedanken
    StGB SS328 Absatz 2.3: Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht

  7. #7
    TP-Insider Avatar von skipperjan
    Registriert seit
    Jan 2005
    Ort
    Düsseldorf
    Beiträge
    981
    $headers .="Dein Kopf und der Rest";

    Geht schon ohne vorherige Definition, ob das schön ist? Naja eher nicht aber es sollte klappen, zumindest hab ich da keine Probleme mit.

    So long,

    skip
    Chenaski - Klamotten designed by Pete
    USE - nicht immer nur mit Stars and Stripes rumlaufen!

    Hunde in der Großstadt: Guck mal wo ich fast reingetreten bin.....

  8. #8
    TP-Insider Avatar von skipperjan
    Registriert seit
    Jan 2005
    Ort
    Düsseldorf
    Beiträge
    981
    PHP-Code:
    $header="From:$email_from_name<$email_from_mail>\n";
    $header .= "Reply-To: $email_from_mail\n";
    //$header .= "Bcc: $email_to_bcc\n";//Noch ne Blind Copy?
    $header .= "X-Mailer: PHP/" phpversion()."\n";
    $header .= "X-Sender-IP: $REMOTE_ADDR\n";
    $header .= "Content-Type: text/html"
    Tja sieht eigentlich gut aus, vielleicht hilft dir da ein etwas erweiterter Header, schreibst du eigentlich gerne Doublequotes? Variablen in Doublequotes werden geparsed und in Singlequotes nicht, also kannst du die ganzen ".$var." Geschichten ohne weiteres weglassen,

    so long,

    skip
    Chenaski - Klamotten designed by Pete
    USE - nicht immer nur mit Stars and Stripes rumlaufen!

    Hunde in der Großstadt: Guck mal wo ich fast reingetreten bin.....

  9. #9
    TP-Member Avatar von Ironwhistle
    Registriert seit
    May 2005
    Ort
    Eburon
    Beiträge
    84
    Ich verzweifle noch...

    Jetzt klappt's mit der Sendermail, dafür werden die Nachrichten als Cc verschickt. Sollten aber Bcc sein...

    Code:
    # Mail senden
    if ($send)
     {
       if (mail($betreff, $nachricht, $headers))
          {
            echo "Der Newsletter wurde an folgende Adressen verschickt:<br><i>$kopien</i>";
          }
            else
          {
            echo "Folgende Adressen konnten nicht angesprochen werden:<br>";
            echo "$kopien";
          }
      }
    ?>
    Mache ich es so, wird überhaupt nichts verschickt...
    Explantierte Gedanken
    StGB SS328 Absatz 2.3: Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51