Bestätigungsemail

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

  • ttrf
    antwortet
    Okay Danke, jetzt funktioniert es.

    Ich hatte ein bisschen gesucht, aber ich hab mir nur 20 Themen angeguckt.

    Einen Kommentar schreiben:


  • Kropff
    antwortet
    Das Forum hat auch eine Suche. Dann findest du Sachen wie das hier.

    Peter

    Einen Kommentar schreiben:


  • ttrf
    antwortet
    Okay, die Daten werden Übermittelt.
    Trodtzdem bleibt noch das oben gennante Warning.

    Einen Kommentar schreiben:


  • Kropff
    antwortet
    Zitat von ttrf Beitrag anzeigen
    Ich weiß nicht wie ich prüfen kann ob die Daten per POST übermittelt werden.
    PHP-Code:
    if ($_POST) {
      ...

    oder besser
    PHP-Code:
    if ($_POST['email']) {
      ...

    Peter

    PS: Dein SQL-Query sieht auch nicht koscher aus.

    Einen Kommentar schreiben:


  • ttrf
    antwortet
    sry, ich tuh mir mit php sehr schwer.

    Ich weiß nicht wie ich prüfen kann ob die Daten per POST übermittelt werden.

    Und wenn ich die Daten in die Datenbank eingebe und ne Mail schicke, passiert das was ich eben beschrieben hab.

    Tut mir Leid, mein Lehrer hat mich ins kalte Wasser geworfen.

    Einen Kommentar schreiben:


  • Kropff
    antwortet
    Sorry, aber hörst du mir überhaupt zu? Dein Problem ist, dass schon beim Aufruf der Seite der gesamte Code ab array_walk ausgeführt wird. Und da du zu dem Zeitpunkt noch keine Mail-Adresse hast, knallt es.

    Peter

    Einen Kommentar schreiben:


  • ttrf
    antwortet
    Warning: mail() [function.mail]: SMTP server response: 503 No valid recipients specified. in C:\xampp\htdocs\gaestebuch.php on line 72

    tut mir Leid, diesen Warning hatte ich vorhin übersehen.
    Wenn ich die Email eingebe und speichere verschwindet die Notice, aber dieser Warning bleibt.Es kommt dann auch keine E-mail bei mir an.
    Zuletzt geändert von ttrf; 21.05.2012, 16:13.

    Einen Kommentar schreiben:


  • Kropff
    antwortet
    Nein, du musst zuerst prüfen, ob überhaupt Daten per POST übermittelt wurden. Und dann erst kommt der komplette Rest. Also Daten in DB schreiben und Mail verschicken.

    Peter

    Einen Kommentar schreiben:


  • ttrf
    antwortet
    Also muss ich eine if-Bedingung einbauen. Und die Bedingung muss dann sein, dass die Werte in der Datenbank gespeichert sind. Aber wie kann ich das da reinschreiben?

    Einen Kommentar schreiben:


  • Kropff
    antwortet
    Ein Notice ist kein Fehler, sondern nur ein Hinweis auf schlampigen Code. Und das ist bei dem Code auch richtig, denn du schickst die Mail ja sofort los, ohne das etwas passiert. Du musst also vorher prüfen, ob überhaupt POST-Werte versendet wurden.

    Peter

    Einen Kommentar schreiben:


  • ttrf
    hat ein Thema erstellt Bestätigungsemail.

    Bestätigungsemail

    Hallo,

    Ich will, dass man, nachdem man sich ins Gästebuch eingetragen hat, eine Bestätigungsmail bekommt. Das Gästebuch funktioniert und die Mail funktioniert auch solange ich eine E-Mail-Adresse eingebe.
    Allerdings will ich ja das die E-Mail an denjenigen geht, der sich einträgt. Und bis jetzt kommt immer ein Error: Notice: Undefined index: email in C:\xampp\htdocs\gaestebuch.php on line 92




    HTML-Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    
    <?php
    define ( 'MYSQL_HOST', 'localhost' );
    define ( 'MYSQL_BENUTZER', 'root' );
    define ( 'MYSQL_KENNWORT', '' );
    define ( 'MYSQL_DATENBANK', 'gästebuch' );
    
    $db_link = @mysql_connect (MYSQL_HOST,
    MYSQL_BENUTZER,
    MYSQL_KENNWORT);
    
    if ( ! $db_link )
    {
    die('keine Verbindung zur Zeit möglich -
    später probieren ');
    }
    
    $db_sel = mysql_select_db( MYSQL_DATENBANK )
    or die("Auswahl der Datenbank fehlgeschlagen");
    ?>
    
    <form name="" action="<?php echo $_SERVER['PHP_SELF']; ?>"
    method="POST" >
    <p>Ihr Name:<br />
    <input type="text" name="name" value="" />
    </p>
    
    <p>Ihre E-Mail-Adresse:<br />
    <input type="text" name='email' value="" />
    </p>
    
    <p>Ihre Homepage:<br />
    <input type="text" name="url" value="" />
    </p>
    
    <p>Gästebucheintrag:<br />
    <textarea name="eintrag" rows="10" cols="50"></textarea>
    </p>
    
    <input type="Submit" value="speichern" />
    </form>
    
    <?php
    
    
    
    array_walk ( $_POST, 'eingabebereinigen' );
    array_walk ( $_GET, 'eingabebereinigen' );
    array_walk ( $_REQUEST, 'eingabebereinigen' );
    
    function eingabebereinigen(&$value, $key)
    {
    $value = strip_tags($value, '<p><br /><b><strong>');
    
    $value = htmlspecialchars($value, ENT_QUOTES);
    
    $value = trim($value);
    }
    
    
    
    $sql = " INSERT INTO gaestebuch ";
    $sql .= " SET ";
    $sql .= " name ='". $_POST['name'] ."', ";
    $sql .= " email ='". $_POST['email'] ."', ";
    $sql .= " url ='". $_POST['url'] ."', ";
    $sql .= " datum ='". date("Y-m-d H:i:s") ."', ";
    $sql .= " eintrag='". $_POST['eintrag'] ."' ";
    values (NULL,'$email')   ;
    echo "<hr />SQL: $sql<hr />";
    
    $db_erg = mysql_query( $sql );
    if ( ! $db_erg )
    {
    die('Ungültige Abfrage: ' . mysql_error());
    }
    
    echo '<p><a href="projekt.php">Gästebuch anzeigen</a></p>';
    
    
    
    
    
    
    
    $sql = select 'email' from 'gastebuch'
    
    
    $empfaenger = $_POST['email'] ;
    $absender   = "ich@testkarnickel.de";
    $betreff    = "PHP-Mail-Test";
    $mailtext   = "Inhalt einer Mail zum Test von PHP";
    $antwortan  = "ICH@testkarnickel.de";
    
    mail( $empfaenger,
          $betreff,
          $mailtext,
          "From: $absender\nReply-To: $antwortan");
    
    
     exit;
    ?>
    
    
    </html>
    
    Danke im Vorraus,

    ttrf
    Zuletzt geändert von ttrf; 21.05.2012, 14:50.
Lädt...
X