Ergebnis 1 bis 8 von 8

Thema: PHPMailer Verständniss-klärung

  1. #1
    Teeny
    Registriert seit
    14.07.2016
    Beiträge
    27
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Frage PHPMailer Verständniss-klärung

    Hallo,


    bin ein absoluter newbie was php betrifft, daher bitte ich gleich vorab um nachsicht


    ich möchte ein ganz simples kontaktformular benutzen und mir wurde phpmailer empfohlen um die übertragung der daten per email zu versenden.
    Zuerst dachte ich ach ganz simple, aber irgendwie ist es doch ganz tricky...


    also habe ich eine Datei kontakformular.php erstellt und im oberen teil den htmlteil für die eingabefelder erstellt und darunter den phpteil, hoffe das daß auch erstmal überhaupt so richtig ist.
    bin des englischen nur bedingt mächtig und grundsätzliche fragen konnte ich auch per youtube-videos nicht für mich klären.


    Hier mal meine kontaktformular.php - Datei:

    Code:
    <!DOCTYPE html>
    <html>
    <head>
    <title>Kontaktformular</title>
    <meta charset="utf-8">
    <style>
    
    
    h1 {  
    
    
        text-align: center;
    }
    
    
    body {
    
    
         background-color: #A9E2F3;
    
    
    }
    
    
    textarea { resize: none;}
    
    
    </style>
    </head>
    
    
    <body>
    <h1>Kontaktformular</h1> <br>
    
    
    <form action="" method="post">
    
    
    <!-- Formular -->
    <div style="margin-left:auto; margin-right:auto; width: 600px; height: 570px;">
    
    
    <font face="Arial" size="4">Ihr Vorname: <br>  <input type="text" name="Vorname" placeholder="" maxlength="30" autofocus style="width: 300px; height: 36px; font-size: 18px; font-family: Arial;"/></font>
    <br>
    <br>
    <font face="Arial" size="4">Ihr Name: <br> <input type="text" name="Name" placeholder="" maxlength="30" style="width: 300px; height: 36px; font-size: 18px; font-family: Arial;"/></font>
    <br>
    <br>
    <font face="Arial" size="4">Betreff: <br> <input type="text" name="Betreff" placeholder="" maxlength="30" style="width: 300px; height: 36px; font-size: 18px; font-family: Arial;"/></font>
    <br>
    <br>
    <font face="Arial" size="4">Ihre E-Mail-Adresse: <input type="email" name="EMail" placeholder="" maxlength="40"style="width: 600px; height: 36px; font-size: 18px; font-family: Arial;"/></font>
    <br>
    <br>
    <font face="Arial" size="4">Ihre Nachricht: <textarea placeholder="" name="Nachricht" maxlength="1000" style="width: 600px; height: 180px; font-size: 18px; font-family: Arial;"/></textarea></font>
    <br>
    <br>
    <input type="text" name="Schutz" style="display: none;">          <!-- Kommentar: zum schutz vor spambots! -->
    <br>
    <input type="submit" value="senden" >
    
    
    </div>
    </form>
    
    
    <?php
    /*                                                                                          //PHP auskommentierung beginnt
    require_once 'phpmailer/PHPMailerAutoload.php';                          //Datei liegt mit phpmailer.php und smtp.php im unterverzeichniss phpmailer meines htdocs-root verzeichniss
    
    
    $mail = new PHPMailer;
    
    
    //$mail->SMTPDebug = 3;                           
    
    
    $mail->isSMTP();                                                                      // Set mailer to use SMTP
    $mail->Host = 'smtp.gmail.com';                                                // Specify main and backup SMTP servers
    $mail->SMTPAuth = true;                                                          // Enable SMTP authentication
    $mail->Username = 'weiter.leiter2016@gmail.com';                      // SMTP username
    $mail->Password = 'XXXXXXXXX';                                           // SMTP password
    $mail->SMTPSecure = 'tls';                                                      // Enable TLS encryption, `ssl` also accepted
    $mail->Port = 587;                                                                   // TCP port to connect to
    
    
    $mail->setFrom(.htmlspecialchars$_POST["EMail"])                 als eintrag richtig?
    $mail->addAddress('joe@example.net', 'Joe User');                   //nicht ganz genau klar
    $mail->addAddress('ellen@example.com');                              //nicht ganz genau klar
    $mail->addReplyTo('info@example.com', 'Information');             //Hier kann eine Reply-adresse eingetragen werden
    $mail->addCC('cc@example.com');                                         //Bei Bedarf hier zusätzliche empfänger eintragen
    $mail->addBCC('bcc@example.com');                                     //Bei Bedarf hier blindkopie empfänger eintragen
    
    
    $mail->addAttachment('/var/tmp/file.tar.gz');                              // Add attachments erstmal werden hier keine anlagen angefügt!
    $mail->addAttachment('/tmp/image.jpg', 'new.jpg');                    // Optional name   erstmal werden hier keine anlagen angefügt!
    $mail->isHTML(true);                                                             // Set email format to HTML
    
    
    $mail->Subject = .htmlspecialchars$_POST["Betreff"]           als eintrag richtig?
    $mail->Body    = .htmlspecialchars$_POST["Nachricht"]        als eintrag richtig?
    $mail->AltBody = .htmlspecialchars$_POST["Nachricht"]       als eintrag richtig?
    
    
    if(!$mail->send()) {
        echo 'Nachricht konnte nicht gesendet werden!';
        echo 'Mailer Error: ' . $mail->ErrorInfo;
    } else {
        echo 'Nachricht wurde gesendet'; 
    }
    */                                                                                   //PHP auskommentierung endet
    ?>
    
    
    </body>
    
    
    </html>
    Also mir geht es hier nicht darum ne lösung von euch geschrieben zu bekommen, erstmal geht es mir darum ob der aufbau so richtig ist ( vonwegen htmlteil oben und darunter den php konfigurationsteil oder wie wird phpmailer sonst integriert? ) und wie die textfelder dem phpskript zugeordnet werden. Ist der Ansatz so richtig?

    hier mal ne liveansicht des formulars: http://helgehh.bplaced.net/


    Gruß,


    Helge

    p.s. kann man der codeansicht irgendwie zeilennummern voranstellen?
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Moderator Avatar von Arne Drews
    Registriert seit
    20.01.2016
    Ort
    Friedrichstadt, NF
    Beiträge
    1.235
    Danke
    21
    Bekam 120 mal "Danke" in 119 Postings

    Standard AW: PHPMailer Verständniss-klärung

    Hallo Helge,

    Du hast einige Syntaxfehler drin. Bitte aktiviere mal das ErrorReporting in Deinem PHP-Script, ganz zu Anfang:
    PHP-Code:
    error_reporting ( -);
    ini_set 'display_errors'true ); 

  3. #3
    Teeny
    Themenstarter

    Registriert seit
    14.07.2016
    Beiträge
    27
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: PHPMailer Verständniss-klärung

    Hallo,

    erstmal habe ich eine html- und eine eigene php-datei erstellt und somit den code aufgeteilt!

    index.html :

    HTML-Code:
    <!DOCTYPE html>
    <html>
    <head>
    <title>Kontaktformular</title>
    <meta charset="utf-8">
    <style>
    
    
    h1 {  
    
    
        text-align: center;
    }
    
    
    body {
    
    
         background-color: #A9E2F3;
    
    
    }
    
    
    textarea { resize: none;}
    
    
    </style>
    </head>
    
    
    <body>
    <h1>Kontaktformular</h1> <br>
    <form action="kontakt.php" method="post">
    
    
    <!-- Formular -->
    <div style="margin-left:auto;
                margin-right:auto;
                width: 600px;
                height: 570px;">
    
    
    <font face="Arial" size="4">Ihr Vorname: <br>  <input type="text" name="Vorname" placeholder="" maxlength="30" autofocus style="width: 300px; height: 36px; font-size: 18px; font-family: Arial;"/></font>
    <br>
    <br>
    <font face="Arial" size="4">Ihr Name: <br> <input type="text" name="Name" placeholder="" maxlength="30" style="width: 300px; height: 36px; font-size: 18px; font-family: Arial;"/></font>
    <br>
    <br>
    <font face="Arial" size="4">Betreff: <br> <input type="text" name="Betreff" placeholder="" maxlength="15" style="width: 300px; height: 36px; font-size: 18px; font-family: Arial;"/></font>
    <br>
    <br>
    <font face="Arial" size="4">Ihre E-Mail-Adresse: <input type="email" name="EMail" placeholder="" maxlength="40"style="width: 600px; height: 36px; font-size: 18px; font-family: Arial;"/></font>
    <br>
    <br>
    <font face="Arial" size="4">Ihre Nachricht: <textarea placeholder="" name="Nachricht" maxlength="1000" style="width: 600px; height: 180px; font-size: 18px; font-family: Arial;"/></textarea></font>
    <br>
    <br>
    <input type="text" name="Schutz" style="display: none;">
    <br>
    <input type="submit" value="senden" >
    
    
    </div>
    </form>
    
    
    </body>
    
    
    </html>
    Über action wird im html-dokument die kontakt.php geladen:

    PHP-Code:
    <html>
    <body>


    <?php


    if (!empty($_POST['Schutz'])) {
        die(
    'Bitte kein Spam!');
    }


    error_reporting ( -);
    ini_set 'display_errors'true ); 


    include_once 
    'phpmailer/PHPMailerAutoload.php';


    $mail = new PHPMailer;


    $mail->SMTPDebug 3;                               // Enable verbose debug output


    $mail->isSMTP();                                      // Set mailer to use SMTP
    $mail->Host 'smtp.gmail.com';                       // Specify main and backup SMTP servers
    $mail->SMTPAuth true;                               // Enable SMTP authentication
    $mail->Username 'weiter.leiter2016@gmail.com';      // SMTP username
    $mail->Password 'XXXXXX';                           // SMTP password
    $mail->SMTPSecure 'tls';                            // Enable TLS encryption, `ssl` also accepted
    $mail->Port 587;                                    // TCP port to connect to


    $mail->setFrom('weiter.leiter2016@gmail.com''weiterleiter');
    $mail->addAddress('joe@example.net''Joe User');     // Add a recipient
    $mail->addAddress('ellen@example.com');               // Name is optional
    $mail->addReplyTo('info@example.com''Information');
    $mail->addCC('cc@example.com');
    $mail->addBCC('bcc@example.com');


    $mail->addAttachment('/var/tmp/file.tar.gz');         // Add attachments
    $mail->addAttachment('/tmp/image.jpg''new.jpg');    // Optional name
    $mail->isHTML(true);                                  // Set email format to HTML


    $mail->Subject 'Here is the subject';
    $mail->Body    'This is the HTML message body <b>in bold!</b>';
    $mail->AltBody 'This is the body in plain text for non-HTML mail clients';


    if(!
    $mail->send()) {
        echo 
    'Nachricht konnte nicht gesendet werden!';
        echo 
    'Mailer Error: ' $mail->ErrorInfo;
    } else {
        echo 
    'Nachricht wurde gesendet'
    }


    ?>
    So ist es übersichtlicher

    sind die eintragungen in der php datei so ok oder habe ich da völlig falsche eintragungen gemacht?

    wenn ich jetzt versuche die daten zu übertragen kommt folgender fehler:

    Nachricht konnte nicht gesendet werden!Mailer Error: SMTP connect() failed. https://github.com/PHPMailer/PHPMail...roubleshooting , kann ja auch noch nicht

    also für mein verständniss, wo im php skript übernehme ich die zu übertragenen eintragungen aus den htmlfeldern, sprich wo name, vorname, email,betreff und die nachricht eingetragen wurde?

    siehe seite: http://helgehh.bplaced.net/

    ich versuche mich da immer weiter ranzutasten, aber so wirklich alleine komme ich nicht weiter

    gruß,

    Helge


    p.s. natürlich habe ich im htdocs-root verzeichniss ein unterverzeichniss phpmailer erstellt in dem die datein PHPMailerAutoload.php , phpmailer.php und smtp.php liegen!
    Geändert von HelgeHH (11.09.2016 um 09:44 Uhr)

  4. #4
    Teeny
    Themenstarter

    Registriert seit
    14.07.2016
    Beiträge
    27
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: PHPMailer Verständniss-klärung

    Hallo,

    habe nochmal die codeformatierungen angepasst, jetzt kann mans noch besser lesen

    gruß,

    Helge

  5. #5
    Fortgeschrittene/r
    Registriert seit
    25.06.2016
    Beiträge
    178
    Danke
    6
    Bekam 12 mal "Danke" in 12 Postings

    Standard AW: PHPMailer Verständniss-klärung

    Hey,

    zu deinem HTML-Teil:

    Wenn du input-elemente beschreiben willst benutze den label-tag. Der ist dazu da diese input felder zu beschreiben.
    -> siehe : http://www.w3schools.com/tags/tag_label.asp


    Was machst du da mit dem attribut : font face ?

    Wenn du jedem Element in deinem html-teil die schriftart arial geben möchtest kannst du ganz easy im css den * Selektor verwenden welches das ganze dokument anspricht und da kannst du dann die schriftart mit : font-family: Arial,sans-serif; einstellen. Die 2. Schriftart wird erst aktiv wenn die 1.ste nicht vorhanden ist

    Wenn du ein unsichtbares input feld erstellen willst brauchst du das css wie in deinem Beispiel nicht. Du kannst es da einfach so machen:

    HTML-Code:
    <input type="hidden" name="schutz" value="schonabgesendet">
    Mit dem könntest du z.b. mit php abfragen ob formular bereits schonmal aufgerufen wurde, weil dieses feld gibt die value erst aus wenn das formular abgesendet wurde.
    Es gibt sehr viele Möglichkeiten in php dies zu machen. Aber dies ist für den anfang die leichteste.


    Zu diesem PHP-Mailer kann ich dir nicht helfen.


    Gruß,
    Stef

  6. #6
    Moderator Avatar von Arne Drews
    Registriert seit
    20.01.2016
    Ort
    Friedrichstadt, NF
    Beiträge
    1.235
    Danke
    21
    Bekam 120 mal "Danke" in 119 Postings

    Standard AW: PHPMailer Verständniss-klärung

    Hallo Helge,

    Der Fehler, den Du bekommst deutet darauf hin, dass die Authentifizierung am SMTP-Server fehl schlägt.
    Prüfe bitte die Daten nochmal, ansonsten darfst Du mir gerne eine PN senden mit der E-Mail, die Du als SMTP-Gateway verwenden willst.
    Dann schaue ich gerne mal, ob ich Dir da etwas weiter helfen kann.

    Zum HTML-Teil: Inline-Style solltest Du sowieso nicht nutzen!
    Du verwendest bereits CSS im Header, da gehört das eher rein.
    Noch besser wäre es in eine extra Datei auszulagern, aber wie gesagt auf jeden Fall kein Inline-Style verwenden, das ist seit Jahren nicht mehr StateOfTheArt.

    Gruß Arne

  7. #7
    Teeny
    Themenstarter

    Registriert seit
    14.07.2016
    Beiträge
    27
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: PHPMailer Verständniss-klärung

    Hallo Stef, Hallo Arne ich danke euch für die Rückmeldung

    Habe erstmal den HTML - Teil angepasst :
    Code:
    <!DOCTYPE html>
    <html>
    <head>
    <title>Kontaktformular</title>
    <meta charset="utf-8">
    <style>
    
    
    h1 {  
    
    
        text-align: center;
    }
    
    
    body {
    
    
         background-color: #A9E2F3;
    
    
    }
    
    
    textarea { resize: none;}
    
    
    
    
    #formular {
        font: Arial;
        font-size: 4;
        margin-left: auto;
        margin-right: auto;
        width: 600px;
        height: 570px;
        
    }
        
     .eins { width: 300px; height: 36px; font-size: 18px; font-family: Arial; }
     
     .zwei { width: 600px; height: 36px; font-size: 18px; font-family: Arial; }
     
     .drei { width: 600px; height: 180px; font-size: 18px; font-family: Arial; }
    
    
    </style>
    </head>
    
    
    <body>
    <h1>Kontaktformular</h1>
    <form action="kontakt.php" method="post">
    
    
    <!-- Formular -->
    <div id="formular">
    
    
    <b>Ihr Vorname:</b> <br>  <input class="eins" type="text" name="Vorname" placeholder="" maxlength="30" />
    <br>
    <br>
    <b>Ihr Name:</b> <br> <input class="eins" type="text" name="Name" placeholder="" maxlength="30" />
    <br>
    <br>
    <b>Betreff:</b> <br> <input class="eins" type="text" name="Betreff" placeholder="" maxlength="15" />
    <br>
    <br>
    <b>Ihre E-Mail-Adresse:</b> <br> <input class="zwei" type="email" name="EMail" placeholder="" maxlength="40" />
    <br>
    <br>
    <b>Ihre Nachricht:</b> <br> <textarea class="drei" placeholder="" name="Nachricht" maxlength="1000" ></textarea>
    <br>
    <br>
    <input type="hidden" name="Schutz" value="keinspam">
    <br>
    <input type="submit" value="senden" >
    
    
    </div>
    </form>
    
    
    </body>
    
    
    </html>
    Am PHP-Teil werkele ich noch etwas rum !

    Ich poste ihn später nach

    gruß,

    Helge

    p.s. konnte leider nicht als html code einfügen, es hat mir jedesmal den gesamten code in der ansicht zerrissen, daher habe ich ihn im normalen code modus eingegeben!

  8. #8
    Fortgeschrittene/r
    Registriert seit
    25.06.2016
    Beiträge
    178
    Danke
    6
    Bekam 12 mal "Danke" in 12 Postings

    Standard AW: PHPMailer Verständniss-klärung

    Hey,

    kein Ding.

    Und wenn du ein label benutzt dann must du das for attribut benutzen und den zugewiesenen text dann dem input feld hinzufügen das html weis, dass der label-tag zum input element gehört
    d.h.:

    HTML-Code:
    <label for="male">Male:</label>
    <input type="radio" name="geschlecht" id="male" value="maenlich">
    
    <label for="female">Female:</label>
    <input type="radio" name="geschlecht" id="female" value="weiblich">
    Stef

Ähnliche Themen

  1. Frage zu /Problem mit phpMailer (AddEmbeddedImage)
    Von sven77 im Forum HTML & CSS Forum
    Antworten: 6
    Letzter Beitrag: 03.09.2010, 13:17
  2. phpmailer
    Von visitor im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 51
    Letzter Beitrag: 29.05.2009, 14:11
  3. PHPMailer - E-Mailversand funktioniert nicht?
    Von Darkxor im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 39
    Letzter Beitrag: 08.04.2009, 11:08
  4. Charset Joomla+phpmailer
    Von jojo87 im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 0
    Letzter Beitrag: 28.02.2008, 03:31
  5. Div Element verständniss frage
    Von Darkromeo im Forum HTML & CSS Forum
    Antworten: 3
    Letzter Beitrag: 08.04.2007, 12:52

Stichworte

Berechtigungen

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