Mail per klick auf button senden?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Mail per klick auf button senden?

    Hallo ich habe ein Problem mit meinem Mail Code und zwar sendet er die mail nicht. Aber wenn ich bei Empfänger händisch eine Mail schreibe sendet er die mail diese sieht aber dann so aus:

    Imgur

    Code:

    PHP-Code:
    <?php

    require_once "db.inc.php";
    require_once 
    "redirect.inc.php";

    $conn = new mysqli($DB_server$DB_user$DB_password$DB_name);

    if(isset(
    $_GET["Hinzufügen"]))
    {
        
    $svnr $_GET["Hinzufügen"];
        
        
    $arztname $_SESSION['nachname'];
        
    $empfaenger "SELECT p_email FROM p_patient WHERE p_svnr='$svnr' ";
        
    $name "SELECT p_nachname FROM p_patient WHERE p_svnr='$svnr'";
        
    $anrede "SELECT p_anrede FROM p_patient WHERE p_svnr='$svnr'";    
        
    $betreff "Neue Medikation";
        
    $from "From: $arztname";
        
        if(
    $anrede=="Frau")
        {
            
    $text1 "geehrte";
        }
        else {
        
    $text1="geehreter";
        }
        
    $text "Sehr '$text1' '$anrede' '$name',\n Ihre aktuelle Medikation ist nun online. \n Mit freundlichen Grüßen Doktor '$arztname'";

        
    mail($empfaenger$betreff$text$from);
    }
    ?>

    Danke!

  • #2
    mail() sollte nicht verwendet werden.

    Verwende stattdessen eine Mailer-Klasse wie zB. PHPMailer.

    Kommentar


    • #3
      soll ich also statt mail(...) phpmailer(...) schreiben oder noch etwas verändern ?


      Danke!

      Kommentar


      • #4
        Hier bekommt man den PHPMailer inkl. Doku und Beispiele:

        https://github.com/Synchro/PHPMailer

        Kommentar


        • #5
          wo kann ich da ein sql statemant eingeben ?

          PHP-Code:
          <?php
          require 'phpmailer/PHPMailerAutoload.php';

          $mail = new PHPMailer;

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

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

          $mail->From 'from@example.com';
          $mail->FromName 'Mailer';
          $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 
          'Message could not be sent.';
              echo 
          'Mailer Error: ' $mail->ErrorInfo;
          } else {
              echo 
          'Message has been sent';
          }
          ?>
          Danke!

          Kommentar


          • #6
            Zitat von myworld Beitrag anzeigen
            wo kann ich da ein sql statemant eingeben ?
            Wo du willst. Das hat ja mit dem Mailer nichts zu tun.

            Kommentar


            • #7
              Ja aber schau dir mein ersten code nochmal an ich will die email aus der mysql datenbank herauslesen das funktioniert aber nicht. Also müsste ich auch hier beim Mail die mysql statemants eingeben

              Danke!

              Kommentar


              • #8
                Zitat von myworld Beitrag anzeigen
                Ja aber schau dir mein ersten code nochmal an ich will die email aus der mysql datenbank herauslesen das funktioniert aber nicht.
                Was funktioniert nicht? Das Auslesen aus der Datenbank oder der Mail-Versand?

                Kommentar


                • #9
                  Das Auslesen aus der Datenbank habe beim ersten Post ein Bild hinzugefügt

                  Danke!

                  Kommentar


                  • #10
                    Das ergibt von vorne bis hinten keinen Sinn.

                    zB. $name enthält SQL-Code und keinen Namen.

                    Irgendwie hab ich das Gefühl, dass du keine Ahnung hast, was du da überhaupt machst. Bitte hole die Grundlagen nach. Ohne Grundlagenwissen, wird das einfach nur ein Gewurstel mit vermutlich zweifelhaftem Ergebnis.
                    Zuletzt geändert von h3ll; 30.05.2015, 14:53.

                    Kommentar


                    • #11
                      Zitat von h3ll Beitrag anzeigen
                      Das ergibt von vorne bis hinten keinen Sinn.

                      zB. $name enthält SQL-Code und keinen Namen.

                      Irgendwie hab ich das Gefühl, dass du keine Ahnung hast, was du da überhaupt machst. Bitte hole die Grundlagen nach. Ohne Grundlagenwissen, wird das einfach nur ein Gewurstel mit vermutlich zweifelhaftem Ergebnis.
                      ahh $name sollte SQL-Code enthalten. Es wird alles aus der Datenbank abgelesen ich will ja nicht nur einen ansprechen. Oder darf man hier keinen sql code einfügen?

                      Kommentar


                      • #12
                        Zitat von myworld Beitrag anzeigen
                        ahh $name sollte SQL-Code enthalten. Es wird alles aus der Datenbank abgelesen ich will ja nicht nur einen ansprechen.
                        Nein, $name sollte einen Namen enthalten, den du aus der Datenbank ausgelesen hast. Wie gesagt: Grundlagen lernen.

                        Kommentar


                        • #13
                          Ok werde mir nochmal die Grunlagen anschauen.
                          Aber wenn man einen namen von der datenbank ausliest spricht man nur einer person an oder?

                          Kommentar


                          • #14
                            Zitat von myworld Beitrag anzeigen
                            Ok werde mir nochmal die Grunlagen anschauen.
                            Aber wenn man einen namen von der datenbank ausliest spricht man nur einer person an oder?
                            Wenn du mehrere auslesen möchtest, brauchst du eine Schleife.

                            Kommentar


                            • #15
                              Ich glaub ich habe mich nicht ganz so verständlich ausgedrückt. Ich versuche es nochmal. Ich habe viele Patienten, und ich will beim erfassen der Medikation einen bestimmten Patienten eine mail senden mit der nachricht , dass die aktuelle Medikationnun online ist. So was würde meines Wissens nicht mit einer Schleife gehen, deshalb das auslesen aus der Datenbank

                              Kommentar

                              Lädt...
                              X