Ergebnis 1 bis 14 von 14

Thema: Formmailer script

  1. #1
    TP-Specialist Avatar von Hausmaster
    Registriert seit
    Nov 2003
    Ort
    Wien
    Beiträge
    2.358

    Formmailer script

    Hi, bin grad dabei, ein formmailer script für mich zu machen,
    dass man sich in eine DB eintragen kann, ist ja kein problem, aber folgendes stellt ein Problem für mich da:

    PHP-Code:
    <?php
    $admin 
    "mailaddy@gmx.at";
    $subject "Betreff";
    $message "Nachricht fuer $admin von $email:\n\n";
    while(list(
    $name,$value)=each($HTTP_POST_VARS)) {
    $message.="$name: $value\n\n";
    }
    mail($admin,$subject,$message,"From: $email");
    ?>
    wie mach ich nun, dass das an die email addys aus meiner DB geschickt wird, statt an eine angegebene addy?

    danke!
    deviantart.com

    "Das schwächere Geschlecht ist das stärkere wegen der Schwäche des stärkeren für das schwächere." - Greta Garbo

  2. #2
    321
    321 ist offline
    TP-Specialist Avatar von 321
    Registriert seit
    Nov 2004
    Ort
    Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
    Beiträge
    4.248
    Den ersten Teil lässt Du wie er ist.
    Dann vor mail()
    - Datenbank verbinden
    - select name email from adresstabelle // evt. mit where wenns nicht an alle soll
    - pro gefundenen Eintrag:
    - - mit Name und email den Empfänger (jetzt $admin) zusammenstellen
    - - mail() ausführen
    - Datenbank abhängen
    [321 Name="Joe"]
    wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
    [/321]


    use my HTML-Tester

    Motto'06: Mut zur deutschen Sprache!

  3. #3
    TP-Specialist Avatar von Hausmaster
    Registriert seit
    Nov 2003
    Ort
    Wien
    Beiträge
    2.358
    danke..
    deviantart.com

    "Das schwächere Geschlecht ist das stärkere wegen der Schwäche des stärkeren für das schwächere." - Greta Garbo

  4. #4
    TP-Specialist Avatar von Hausmaster
    Registriert seit
    Nov 2003
    Ort
    Wien
    Beiträge
    2.358
    dumme frage, aber wie setzt man das um?
    ich schaffs einfach nicht..
    deviantart.com

    "Das schwächere Geschlecht ist das stärkere wegen der Schwäche des stärkeren für das schwächere." - Greta Garbo

  5. #5
    TP-Veteran Avatar von manuelito
    Registriert seit
    Sep 2002
    Beiträge
    1.229
    sowas in der Art

    PHP-Code:
    $conn mysql_connect("localhost""username""passwort");
    mysql_select_db("datenbank"$conn);
    $result =mysql_query("SELECT name, email FROM emailtabelle");
    while(
    $row mysql_fetch_array($result)){
    $message .= "Hallo ".$row['name']." ... usw nachricht";
    mail($row['email'], $subject$message"From:hausmaster");

    Wer sabotiert eigentlich ständig meine Signatur?

  6. #6
    321
    321 ist offline
    TP-Specialist Avatar von 321
    Registriert seit
    Nov 2004
    Ort
    Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
    Beiträge
    4.248
    Beim Auslesen des Namens und der Email-Adresse aus der DB dachte ich nebst persönlicher Anrede an die Form der Email-Adresse:

    $empf="$name <$email>";
    mail($empf, $subject, $message, "From:hausmaster");
    [321 Name="Joe"]
    wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
    [/321]


    use my HTML-Tester

    Motto'06: Mut zur deutschen Sprache!

  7. #7
    TP-Specialist Avatar von Hausmaster
    Registriert seit
    Nov 2003
    Ort
    Wien
    Beiträge
    2.358
    danke
    deviantart.com

    "Das schwächere Geschlecht ist das stärkere wegen der Schwäche des stärkeren für das schwächere." - Greta Garbo

  8. #8
    TP-Specialist Avatar von Hausmaster
    Registriert seit
    Nov 2003
    Ort
    Wien
    Beiträge
    2.358
    irgendwie geht folgendes script nicht

    PHP-Code:
    <?php

            
    require_once "mpcfg.php";
            
            
    mysql_connect($dbaddress,$username,$password) or die( mysql_error() );
            
    mysql_select_db($mysqldb) or die ( mysql_error() );

            
    $result =mysql_query("SELECT emailadresse FROM hawei");
            while(
    $row mysql_fetch_array($result)){

            
    $subject "Betreff";
            
    $message "$text";
            }
            
    mail($row['email'],$subject,$message,"From:Hawei Newsletter");
    ?> 



    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Unbenanntes Dokument</title>
    </head>

    <body>
    <form name="form1" method="post" action="">
      <p>
        <input name="betreff" type="text" id="betreff">
      </p>
      <p>    <br>
        <textarea name="text" cols="50" rows="20" id="text"></textarea>
    </p>
      <p>
        <input type="submit" name="Submit" value="Senden">
    </p>
    </form>
    </body>
    </html>
    deviantart.com

    "Das schwächere Geschlecht ist das stärkere wegen der Schwäche des stärkeren für das schwächere." - Greta Garbo

  9. #9
    TP-Specialist Avatar von phpBuddy
    Registriert seit
    Aug 2004
    Ort
    Kaiserslautern
    Beiträge
    4.678
    Deinem Formular täte ein "action" gut, da steht momentan nix, also kann auch kein Script aufgerufen werden. Deinem $subject weist Du einen festen Wert zu, wieso dann noch ein Betreff im Formular? Das Dollarzeichen vergessen?
    Aus Deiner DB liest Du "emailadresse" aus, benutzt dann aber $row['email'] - diese Variable gibt es nicht! Wenn schon, dann $row['emailadresse'];
    Wenn das ein Mass-Mailer (Newsletter o.ä.) werden soll, dann muß die mail()-Funktion innerhalb der while()-Schleife plaziert sein. Momentan wird die Mail nur einmal verschickt.

    Für generelle Formmailer Fragen solltest Du mal in den Traum-Scripts Bereich schauen. Dort findest Du ein gutes Formmail-Script zum lernen. (Formmailer mit Reloadsperre)

  10. #10
    TP-Specialist Avatar von His.Master's.Voice
    Registriert seit
    Mar 2006
    Ort
    Wörrstadt
    Beiträge
    2.454
    Hallo Hausmaster,

    immer noch Ärger mit dem Formmailer? Falls es auch ohne DB-Anbindung sein darf, mit Bildschirmrückmeldung, Autoresponderemail nur wenn vom Absender gewünscht, Eingabenüberprüfung.

    Biddeschoooön...
    Gruß HMV

  11. #11
    321
    321 ist offline
    TP-Specialist Avatar von 321
    Registriert seit
    Nov 2004
    Ort
    Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
    Beiträge
    4.248
    Jedenfalls den Submitt-Button abfragen!
    Wenn gedrückt:
    - Eingabe prüfen
    - - wenn fehlerhaft: Meldung(en) und das Formular ausgeben
    - - wenn ok: Mailversand vornehmen
    Wenn nicht gedrückt:
    - Formular ausgeben

    Ausserdem obige Hinweise von Rizzo beachten.

    @ngc4594
    [321 Name="Joe"]
    wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
    [/321]


    use my HTML-Tester

    Motto'06: Mut zur deutschen Sprache!

  12. #12
    TP-Specialist Avatar von Hausmaster
    Registriert seit
    Nov 2003
    Ort
    Wien
    Beiträge
    2.358
    hey,

    hab einige sachen geändert, aber packs leider immer noch nicht..
    wäre euch sehr dankbar, wenn ihr das ausbessern könntet!

    danke schonmal!

    // edit: hat eh funktioniert, alledings ist die mail erst mit einigen min verspätung eingetroffen
    Geändert von Hausmaster (18.05.2006 um 15:01 Uhr)
    deviantart.com

    "Das schwächere Geschlecht ist das stärkere wegen der Schwäche des stärkeren für das schwächere." - Greta Garbo

  13. #13
    TP-Urgestein Avatar von webcreate
    Registriert seit
    Nov 2003
    Ort
    NRW
    Beiträge
    11.661
    LIest du dir auch die Tipps hier durch?
    Zumal kann dein Script probleme machen, wenn die register_globals off sind.

    PHP-Code:
    <?php

            
    require_once "mpcfg.php";
            
            
    mysql_connect($dbaddress,$username,$password) or die( mysql_error() );
            
    mysql_select_db($mysqldb) or die ( mysql_error() );
            
            if (isset(
    $_POST['submit']) && $_POST['submit'] != ""){
                    
    $sql =mysql_query("SELECT * FROM hawei");
                    
    $subject $_POST['betreff'];
                    
    $message _POST['text'];
                    
    $absender "ich@domain.de";
                    
    $header="From:Hawei Newsletter<$absender>\n";
                    
    $header .= "Reply-To: $absender\n"
                    
    $header .= "X-Mailer: PHP/" phpversion(). "\n";          
                    
    $header .= "X-Sender-IP: $REMOTE_ADDR\n"
                    
    $header .= "Content-Type: text/html; charset=iso-8859-1\n"
                    while(
    $empfaenger mysql_fetch_array($sql)) mail($empfaenger['emailadresse'],$subject,$message,$header);
            }
    ?> 



    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Unbenanntes Dokument</title>
    </head>

    <body>
    <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF'];?>">
      <p>
        <input name="betreff" type="text" id="betreff">
      </p>
      <p>    <br>
        <textarea name="text" cols="50" rows="20" id="text"></textarea>
    </p>
      <p>
        <input type="submit" name="submit" value="Senden">
    </p>
    </form>
    </body>
    </html>
    Aufgrund fehlernder DB Struktur und der includeten Datei nicht getestet!

    EDIT
    Sah du hast da auch keinen richtigen Header drin, den sollte man schon haben, sonst verweigert der Server ggf. die Mail und beim Empfänger kann sie als Spam erkannt werden.
    Geändert von webcreate (18.05.2006 um 15:11 Uhr)
    Gruß Mark

    webcreate IT SOLUTIONS
    www.webcreate-nrw.de

    Photoblog....|....flickr

  14. #14
    TP-Specialist Avatar von phpBuddy
    Registriert seit
    Aug 2004
    Ort
    Kaiserslautern
    Beiträge
    4.678
    Hast schon editiert

    Änder das if ($submit) { ... } mal ab in if(isset($_POST['submit'])) { ... } sonst kannst Du mal Problemchen mit dem Script bekommen. Achte auch darauf das Dein "Submit" mit einem großen "S" anfängt. Das mag auf dem heimischen xampp unter Windows klappen, auf einer Linux-Kiste wird das aber Probleme verursachen.

    Ansonsten: gratz, das es jetzt läuft!


    [edit]
    Mark war schneller

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