Email versenden mit DB Einträgen (SHOP)

IRIE

Mitglied
Hallo zusammen !

ich hab da ein verzwicktes Problem. Und zwar habe ich einen Webshop programmiert, der auch wunderbar funktioniert, die Daten werden von dem Shop mittels sessions in den Warenkorb gelegt (der auf einer extra Seite liegt).

von dort möchte ich, das die ausgewählten Produkte, welche in einer Datenbank gespeichert sind, per Email an mich geschickt werden.

DIe Kundendaten, für das Bestellformular wird auch in eine Datenbank gespeichert.

ich hab es bissher hingekreigt, das die Kundendaten problemlos gesendet werden. Nur schaff ich nicht, die ausgewählten Produkte zu schicken. Hab schon versuch in meiner while-schleife $datei["PRODUKTNAME"] in eine Variable zu speichern und die zu senden, aber wenn mehr Produkte ausgewählt werden, werden nur die letzten über die variable mitgesendet !

Puh ganz schön schwer zu erklären :) ich hoff ihr versteht was mein Problem ist, und könnt mir helfen !

Ich danke euch !

Gruß

MICHI
 
so, hier wird die Session definiert von der Shop Page, hab auch mein Session start() ganz oben auf der Seite plaziert.

PHP:
foreach ($_SESSION as $key => $value){  
			$id = substr($key,4);
			$query = "SELECT * FROM shop WHERE ID = $id";
			$result = mysql_query ($query, $db);
			while ($zeile = mysql_fetch_array($result)){
				$msg_color = "#CCD8EB";
				
				echo ("<tr>");
				echo ("<td bgcolor = \"$msg_color\">".$zeile["ID"]."</td>");
				echo ("<td bgcolor = \"$msg_color\">".$zeile["NAME"]."</td>"); 
				echo ("<td bgcolor = \"$msg_color\">".$zeile["KATEGORIE"]."</td>");
				echo ("<td bgcolor = \"$msg_color\" align=\"center\">$value</td>");
				echo ("<td bgcolor = \"$msg_color\" align=\"right\">".$zeile["PREIS"]." €</td>");
				echo ("<td bgcolor = \"$name_color\"><a href=\"".$_SERVER["PHP_SELF"]."?action=delete&id=".$zeile["ID"]."\"><img src=\"../pics/buttons/delete.jpg\" border=\"0\"></td>");
				echo ("</tr>"); 
				$gesamtpreis += $value * $zeile["PREIS"];
				$mwst = $gesamtpreis/100*16;
				
							}

der Warenkorb wird richtig angezeigt. Jetzt kommt ein Formular, wo man Kundendaten einschreiben muss.

PHP:
$empfaenger = "Michael Teichert <info@teichert-design.de>";
	$name = ("Schneebrett Shop");
	$nachricht = ("ANSCHRIFT\n\n Anrede: $anrede\n Vorname: $vorname\n Nachname: $nachname\n Adresse: $adresse\n PLZ: $plz\n Ort: $ort\n Telefon: $telefon\n Email: $email\n\n");
	//$nachricht.= ("BESTELLUNG\n\n Art.Nr.: $bestell_id\n Artikel: $bestell_name\n Kategorie: $bestell_kategorie\n Einzelpreise: $bestell_preis\n Gesamtbetrag: $gesamtpreis €\n ");
	// Hier hab ich versucht mit definierten variablen, die Datenbank einträge zu schicken, kommt aber wenn dann nur einer an.
	
	
	$anrede = $_POST["anrede"]; 
	$vorname = $_POST["vorname"];
	$nachname = $_POST["nachname"];
	$adresse = $_POST["adresse"];
	$plz = $_POST["plz"];
	$ort = $_POST["ort"];
	$telefon = $_POST["telefon"];
	$email = $_POST["email"];
	
	if ($_POST["Submit"]){
		if ($vorname && $nachname && $adresse && $plz && $ort && $email){
			if (strstr($email,"@") && strstr($email,".")){
				if (ereg("[0-9]", $plz)){
					$query = "INSERT INTO kunden (ANREDE,VORNAME,NACHNAME,ADRESSE,PLZ,ORT,TELEFON,EMAIL)";
					$query.= "VALUES ('$anrede','$vorname','$nachname','$adresse','$plz','$ort','$telefon','$email')";
					if (mysql_query($query, $db)){
						//echo ("Bestellung abgeschickt");
						$header = "From: $name <$email>\r\n";
						if (mail($empfaenger, "Bestellung von $name",$nachricht,$header)){
							echo ("<br><p class=\"message\"><b>Bestellung wurde versandt</b></p>");
								$name = "";
								$email = "";
								$nachricht = "";
								$betreff = "";
			
						}else{
							echo ("<br><p class=\"message\"><b>Email konnte nicht versendet werden</b></p>");
						}
					}else{
						echo ("<br><p class=\"message\"><b>Fehler, bitte erneut versuchen</b></p>");
					}
				}else{
					echo ("<br><p class=\"message\"><b>Die Postleitzahl muss aus Zahlen bestehen</b></p>");
				}	
			}else{
				echo ("<br><p class=\"message\"><b>Bitte geben Sie eine gültige Email ein</b></p>");
			}	
		}else{
			echo ("Bitte alle markierten Felder ausfüllen");
		}
	}

bei der Formular Action hab ich $_SERVER["PHP_SELF"] angegeben !

ich hoffe jetzt ists verständlicher :)

Danke für die Hilfe !
 
Zurück