Formular- Bestätigungsmail und Bestätigungsseite

Hier ist der Datenbankabruf in dem die Mail versendet wir!

PHP:
<?php

$mysqlhost="*****";
$mysqluser="*****";
$mysqlpwd="*****";
$mysqldb="*****";

$connection=mysql_connect($mysqlhost, $mysqluser, $mysqlpwd) or die("Verbindungsversuch fehlgeschlagen");

mysql_select_db($mysqldb, $connection) or die("Konnte die Datenbank nicht waehlen.");

/* ausführen einer SQL Anfrage */
$query = "SELECT * FROM anmeldung";
$query2 = "SELECT * FROM anmeldung WHERE (nr='$nummer')";
$result = mysql_query($query) or die("Anfrage fehlgeschlagen: " . mysql_error());
$result2 = mysql_query($query2) or die("Anfrage fehlgeschlagen: " . mysql_error());

$result3 = mysql_fetch_array($result2);

mysql_query("INSERT INTO meldeliste(nr, vorname, nachname, strasse, nummer, plz, ort,  geburtstag, mail,) SELECT nr,  vorname, nachname, strasse, nummer, plz, ort,  geburtstag, mail,  FROM anmeldung WHERE (nr='$nummer')") or die ("Fehler kopieren.");
mysql_query("DELETE FROM anmeldung WHERE (nr='$nummer')") or die ("Fehler löschen");




$text = 'Ihre Anmeldebestätigung,
        Name: '.$_POST['form_nachname']. '
        Vorname: ' .$_POST['form_vorname']. '
        Geburtsdatum: ' .$_POST['form_geburtstag']. '
        Registriernummerummer: ' .$_POST['form_nr']. ';


//Instanz von PHPMailer bilden
  $mail = new PHPMailer();

  //Absenderadresse der Email setzen
  $mail->From = "************";

  //Name des Abenders setzen
  $mail->FromName = "*********";

  //Empfängeradresse setzen
  $mail->AddAddress($result3[mail]);

  //Betreff der Email setzen
  $mail->Subject = "Anmeldebestätigung";

  //Text der EMail setzen
  $mail->Body = $text;

  //EMail senden und überprüfen ob sie versandt wurde
  if(!$mail->Send())
  {
     //$mail->Send() liefert FALSE zurück: Es ist ein Fehler aufgetreten
     echo "Die Email konnte nicht gesendet werden";
     echo "Fehler: " . $mail->ErrorInfo;
  }
  else
  {
     //$mail->Send() liefert TRUE zurück: Die Email ist unterwegs
     echo "<span style='color:white;'>So eben wurde eine Meldebestätigung versandt.</span><br /><br />";
  }





mysql_query("DELETE FROM anmeldung WHERE (nr='$loeschena')") or die ("Fehler löschen");

mysql_query("DELETE FROM meldeliste WHERE (nr='$loeschenb')") or die ("Fehler löschen");

/* Freigeben des Resultsets */
mysql_free_result($result);
mysql_free_result($result2);

?>

Hir drunter werden dann nur noch die Daten abgerufen und duch bestätigen in von der einen in die Andere Datenbank verschickt.
 
Versuchs mal damit:

// edit: das passt nicht so ganz,
// wenn ich zuhause bin schau ich nochmal drüber ich mach jetzt erstmal Feierabend :)
 
Zuletzt bearbeitet:
Zeigte mir den Fehler: Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /customers//httpd.www/verwaltung/admin.php on line 27

in der Zeile an:
PHP:
mysql_query("INSERT INTO meldeliste(nr, vorname, nachname, strasse, nummer, plz, ort,  geburtstag, mail,) SELECT nr,  vorname, nachname, strasse, nummer, plz, ort,  geburtstag, mail,  FROM anmeldung WHERE (nr='$nummer')") or die ("Fehler kopieren.");

Ok bis später..
 
Mhhhh....leider hab ich bisher keine Lösung gefunden! Das Formular überträgt die Daten immer noch leer....

Hat jemand eine Idee?
 
PHP:
mysql_query("INSERT INTO meldeliste(nr, vorname, nachname, strasse, nummer, plz, ort,  geburtstag, mail,) SELECT nr,  vorname, nachname, strasse, nummer, plz, ort,  geburtstag, mail,  FROM anmeldung WHERE (nr='$nummer')") or die ("Fehler kopieren.");

Also mit diesem query stimmt mal etwas gewaltig nicht :)

Das SELECT und FROM und WHERE hat dort nichts zu suchen.
Ändere das mal ab:

PHP:
mysql_query('INSERT INTO meldeliste (nr, vorname, nachname, strasse, nummer, plz, ort,  geburtstag, mail) VALUES ( *hier die Variablen eintragen* )')
 or die ('Fehler kopieren.');

Nach VALUES musst du die Variablen eintragen, mit Komma getrennt.
 
Wenn ich das so mache kommen auch keine Daten in der Mail an!
Und dazu kommt das er mir die Daten dann nicht von der Anmeldung in die Meldeliste überträgt!
PHP:
mysql_query('INSERT INTO meldeliste(nr, nachname, vorname, geschlecht, strasse, plz, ort, geburtstag, mail, telefon,datum)

VALUES ("'.$_POST['form_nachname'].'","'.$_POST['form_vorname'].'","'.$_POST['form_geschlecht'].'","'.$_POST['form_strasse'].'","'.$_POST['form_plz'].'","'.$_POST['form_ort'].'","'.$_POST['form_geburtstag'].'","'.$_POST['form_mail'].'","'.$_POST['form_telefon'].'",NOW()') or die ('Fehler kopieren.');

:-(
 
MMMhhh...Loomes hast noch eine Idee oder weiß jemand anderes einen Tipp?

Wenn nicht, muss ich die Nadel im Heuhaufen wohl weitersuchen...
 
So noch ein Versuch, hab dein Ding irgendwie verdrängt, tschuldigung :)

PHP:
$mysqlhost='*****';
$mysqluser='*****';
$mysqlpwd='*****';
$mysqldb='*****';

$connection = mysql_connect($mysqlhost, $mysqluser, $mysqlpwd) or die('Verbindungsversuch fehlgeschlagen');

mysql_select_db($mysqldb, $connection) or die('Konnte die Datenbank nicht ausw&auml;hlen.');

/* ausführen einer SQL Anfrage */
$query = 'SELECT * FROM anmeldung';
$query2 = 'SELECT * FROM anmeldung WHERE nr = "' .$nummer. '" ';
$result = mysql_query($query) or die('Anfrage fehlgeschlagen: ' . mysql_error());
$result2 = mysql_query($query2) or die('Anfrage fehlgeschlagen: ' . mysql_error());

$result3 = mysql_fetch_array($result2);

mysql_query('INSERT INTO meldeliste (nr, nachname, vorname, geschlecht, strasse, plz, ort, geburtstag, mail, telefon, datum) VALUES ("' .$_POST['form_nachname']. '", "' .$_POST['form_vorname']. '", "' .$_POST['form_geschlecht']. '", "' .$_POST['form_strasse']. '", "' .$_POST['form_plz']. '", "' .$_POST['form_ort']. '", "' .$_POST['form_geburtstag']. '", "' .$_POST['form_mail']. '", "' .$_POST['form_telefon']. '", NOW()') or die ('Fehler kopieren.'); 

mysql_query('DELETE FROM anmeldung WHERE nr = "' .$nummer. '"') or die ('Fehler l&ouml;schen');

$text = 'Ihre Anmeldebest&auml;tigung,<br />
        Name: ' .$_POST['form_nachname']. '<br />
        Vorname: ' .$_POST['form_vorname']. '<br />
        Geburtsdatum: ' .$_POST['form_geburtstag']. '<br />
        Registriernummer: ' .$_POST['form_nr'];


//Instanz von PHPMailer bilden
  $mail = new PHPMailer;

  //Absenderadresse der Email setzen
  $mail->From = '************';

  //Name des Abenders setzen
  $mail->FromName = '*********';

  //Empfängeradresse setzen
  $mail->AddAddress($result3[mail]);

  //Betreff der Email setzen
  $mail->Subject = 'Anmeldebest&auml;tigung';

  //Text der EMail setzen
  $mail->Body = $text;

  //EMail senden und überprüfen ob sie versandt wurde
  if(!$mail->Send())
  {
     //$mail->Send() liefert FALSE zurück: Es ist ein Fehler aufgetreten
     echo 'Die Email konnte nicht gesendet werden<br />';
     echo 'Fehler: ' . $mail->ErrorInfo;
  } else
    {
      //$mail->Send() liefert TRUE zurück: Die Email ist unterwegs
      echo '<span style="color:white;">So eben wurde eine Meldebest&auml;tigung versandt.</span><br /><br />';
    }
 
Zurück