[GastForen Programmierung/Entwicklung PHP und MySQL PHP Bestellformular - Inhalte an Datei übergeben (zur Überprüfung) und dann per email senden

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

PHP Bestellformular - Inhalte an Datei übergeben (zur Überprüfung) und dann per email senden

homeedition
Beiträge gesamt: 196

5. Aug 2014, 17:25
Beitrag # 1 von 4
Bewertung:
(5504 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

ich habe ein Bestellformular gebaut. Nach Eingabe der Daten werden die Inhalte an eine zweite Datei per POST übergeben und via echo in der zweiten Datei eingelesen, das klappt soweit. Nun möchte ich gerne die Inhalte der zweiten Datei als eMail senden aber ich bekomme das irgendwie nicht hin.

Kann mir jemand sagen wie ich das hinbekomme? Das wäre SUPER!!!

Ich habe die Variablen in den Beispieldatein etwas bearbeitet und es werden dort nicht alle Daten eingelesen aber es gaht ja um das Prinzip der eMailversendung und dann ist es hoffentlich nicht so schlimm wenn nicht alle Daten eingelesen werden :)

Hier der inhalt der shop_01.php:
Code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<style type="text/css">
@import "http://fonts.googleapis.com/css?family=Open+Sans+Condensed:300,300italic,700";
@import "http://fonts.googleapis.com/css?family=Open+Sans:600,600italic,700,700italic,800,800italic,400italic,400,300italic,300";
<!--
.TextHead {
color: #0095c0;
font-family: Open Sans Condensed,sans-serif;
font-size: 16pt;
font-weight: bold;
line-height: 1.2;
}
.Fliesstext {
color: #000000;
font-family: Open Sans,sans-serif;
font-size: 8pt;
font-weight: normal;
letter-spacing: 1px;
line-height: 1.7;
}
.titel_smal {
font-family: Verdana;
font-size: 7pt;
font-style: normal;
font-variant: normal;
text-align: left;
line-height: 17px;
color: #000;
}
.mailerror {
font-family: Verdana;
font-size: 9pt;
font-style: normal;
font-variant: normal;
text-align: left;
color: #FF0000;
}
.inhalte {
font-family: Verdana;
font-size: 9pt;
font-style: normal;
font-variant: normal;
text-align: left;
line-height: 17px;
color: #000;
}
#wrapper {
position: absolute;
width: 785px;
height: 325px;
z-index: 1;
left: 0px;
top: 0px;
}
#formular {
position: absolute;
width: 785px;
height: 320px;
z-index: 2;
left: 0px;
top: 0;
}
#vorstellung {
position: absolute;
width: 232px;
height: 43px;
z-index: 3;
left: 22px;
top: 252px;
}
#alto {
position: absolute;
width: 125px;
height: 225px;
z-index: 4;
left: 305px;
top: 42px;
}
#sybold {
position: absolute;
width: 125px;
height: 225px;
z-index: 4;
left: 164px;
top: 42px;
}
#mariska {
position: absolute;
width: 420px;
height: 188px;
z-index: 4;
left: 22px;
top: 38px;
}
-->
</style>


<title>testdatei1</title></head>
<body onload="initPage()">
<div style="left: 0px; top: 0px; width: 435px; height: 375px; position: absolute; z-index: 1; overflow: auto;">
<div style="left: 27px; top: 3px; width: 344px; height: 47px; position: absolute; z-index: 2;"><p class="TextHead">Shopformular</p>
</div>
<div style="left: 0px; top: 60px; width: 420px; position: absolute; z-index: 3;">
<form name="form1" method=post action="shop_02.php">
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60"><select name="01anzahl">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select></td>
<td>Testprodukt (anzahl)</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>Zusatztext mit etwas Zusatz<strong></strong></td>
</tr>
</table>
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60">&nbsp;</td>
<td width="60"><select name="01monate">
<option value="3">3</option>
<option value="3">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select></td>
<td>Monate</td>
</tr>
<tr>
<td width="60" height="23">&nbsp;</td>
<td width="60">&nbsp;</td>
<td>e Monat 0<strong> €</strong></td>
</tr>
</table><br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60"><select name="02anzahl" id="02anzahl">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select></td>
<td>zusätzliches Testprodukt (anzahl)</td>
</tr>
</table>
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60">&nbsp;</td>
<td width="60"><select name="02monate" id="02monate">
<option value="0">0</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select></td>
<td>Monate</td>
</tr>
<tr>
<td width="60" height="23">&nbsp;</td>
<td width="60">&nbsp;</td>
<td>je Monat 0<strong> €</strong></td>
</tr>
</table><br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60"><select name="03anzahl" id="03anzahl">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select></td>
<td>Extra Profi Zusatzprodukt 0 €</td>
</tr>
</table>
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60">&nbsp;</td>
<td width="60"><select name="03monate" id="03monate">
<option value="0">0</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select></td>
<td>Monate</td>
</tr>
<tr>
<td width="60" height="23">&nbsp;</td>
<td width="60">&nbsp;</td>
<td>je Monat0<strong> €</strong></td>
</tr>
</table><br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td colspan="3"><strong>Adress- & Zahlungsangaben</strong><br /></td>
</tr><tr>
<td colspan="3">Name:</td>
</tr>
<tr>
<td colspan="3"><input name="name" type="text" size="57" /></td>
</tr>
<tr>
<td colspan="3">Vorname</td>
</tr>
<tr>
<td colspan="3"><input name="vorname" type="text" size="57" /></td>
</tr>
<tr>
<td colspan="3">Straße / Hausnummer</td>
</tr>
<tr>
<td colspan="3"><input name="strasse" type="text" size="57" /></td>
</tr>
<tr>
<td colspan="3">Postleitzah / Ort</td>
</tr>
<tr>
<td width="51"><input name="plz" type="text" size="7" /></td>
<td width="14">&nbsp;</td>
<td width="508"><input name="ort" type="text" size="46" /></td>
</tr>
<tr>
<td colspan="3">Telefon</td>
</tr>
<tr>
<td colspan="3"><input name="telefon" type="text" size="57" /></td>
</tr>
<tr>
<td colspan="3">E-Mail</td>
</tr>
<tr>
<td colspan="3"><input name="email" type="text" size="57" /></td>
</tr>
</table><br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td>Kontoinhaber</td>
</tr>
<tr>
<td><input name="kto_inhaber" type="text" size="57" /></td>
</tr>
<tr>
<td>Name der Bank</td>
</tr>
<tr>
<td><input name="bankname" type="text" size="57" /></td>
</tr>
<tr>
<td>Bankleitzahl</td>
</tr>
<tr>
<td><input name="blz" type="text" size="57" /></td>
</tr>
<tr>
<td>Kontonummer</td>
</tr>
<tr>
<td><input name="kto_nummer" type="text" size="57" /></td>
</tr>
<tr>
<td>IBAN</td>
</tr>
<tr>
<td><input name="iban" type="text" size="57" /></td>
</tr>
</table>
<br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60" height="23">&nbsp;</td>
<td width="60"><input type="submit" name="Submit" value="weiter" /></td>
<td>&nbsp;</td>
</tr>
</table>
</form>
</div>
</div>
</body>


und hier der inhalt der shop_02.php, dessen Inhalte ich gerne per eMail senden möchte:
Code
<html> 
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
@import "http://fonts.googleapis.com/css?family=Open+Sans+Condensed:300,300italic,700";
@import "http://fonts.googleapis.com/css?family=Open+Sans:600,600italic,700,700italic,800,800italic,400italic,400,300italic,300";
<!--
.TextHead {
color: #0095c0;
font-family: Open Sans Condensed,sans-serif;
font-size: 16pt;
font-weight: bold;
line-height: 1.2;
}
.Fliesstext {
color: #000000;
font-family: Open Sans,sans-serif;
font-size: 8pt;
font-weight: normal;
letter-spacing: 1px;
line-height: 1.7;
}
.titel_smal {
font-family: Verdana;
font-size: 7pt;
font-style: normal;
font-variant: normal;
text-align: left;
line-height: 17px;
color: #000;
}
.mailerror {
font-family: Verdana;
font-size: 9pt;
font-style: normal;
font-variant: normal;
text-align: left;
color: #FF0000;
}
.inhalte {
font-family: Verdana;
font-size: 9pt;
font-style: normal;
font-variant: normal;
text-align: left;
line-height: 17px;
color: #000;
}
#wrapper {
position: absolute;
width: 785px;
height: 325px;
z-index: 1;
left: 0px;
top: 0px;
}
#formular {
position: absolute;
width: 785px;
height: 320px;
z-index: 2;
left: 0px;
top: 0;
}
#vorstellung {
position: absolute;
width: 232px;
height: 43px;
z-index: 3;
left: 22px;
top: 252px;
}
#alto {
position: absolute;
width: 125px;
height: 225px;
z-index: 4;
left: 305px;
top: 42px;
}
#sybold {
position: absolute;
width: 125px;
height: 225px;
z-index: 4;
left: 164px;
top: 42px;
}
#mariska {
position: absolute;
width: 420px;
height: 188px;
z-index: 4;
left: 22px;
top: 38px;
}
-->
</style>
<!-- .......................................................................... -->
<!-- Anfang Formular -->
<!-- .......................................................................... -->
<script language=JavaScript>
<!--
function isValid() {

var msg = "";

if (shopbestellung.email.value.indexOf("@") < 1 ||
shopbestellung.email.value.indexOf(".") < 1) {
msg += "- Die E-Mail-Adresse ist syntaktisch nicht korrekt.\n";
}

if(shopbestellung.name.value == "") {
msg += "- Leeres Feld: Name:\n";
}

if(shopbestellung.vorname.value == "") {
msg += "- Leeres Feld: Vorname:\n";
}

if(msg == "") {
return true;
}
alert(msg);
return false;
}
-->
</script>
<?php
$formularAnzeigen = false;
if (!empty($_POST["senden"]) && (
empty($_POST["email"]) ||
empty($_POST["name"]))) {
$formularAnzeigen = true;
echo '<span class="mailerror">Bitte alle Pflichtfelder ausfuellen.</span>';
} else if (!empty($_POST["senden"]) &&
!isEmail($_POST["email"])) {
$formularAnzeigen = true;
echo '<span class="mailerror">Die E-Mail-Adresse ist nicht korrekt.</span>';
} else if (empty($_POST["senden"])) {
$formularAnzeigen = true;
}
if ($formularAnzeigen) {
?>
<title>seite2.php</title>
</head>
<body>
<?php
// Auslesen der Variablen
$anzahl01 = $_POST["anzahl01"];
$monate01 = $_POST["monate01"];
$anzahl02 = $_POST["anzahl02"];
$monate02 = $_POST["monate02"];
$anzahl03 = $_POST["anzahl03"];
$monate = $_POST["monate03"];
$name = $_POST["name"];
$vorname = $_POST["vorname"];
$strasse = $_POST["strasse"];
$plz = $_POST["plz"];
$ort = $_POST["ort"];
$telefon = $_POST["telefon"];
$email = $_POST["email"];
$kto_inhaber = $_POST["kto_inhaber"];
$bankname = $_POST["bankname"];
$blz = $_POST["blz"];
$kto_nummer = $_POST["kto_nummer"];
$iban = $_POST["iban"];

// Berechnung artikelpreise und Anzahl
$gesamtpreis01 = $anzahl01 * 5;
$gesamtpreis01 = $monate01 * 12.50;
$buchungspreis01 = $gesamtpreis01 + $gesamtpreis01;

$buchungspreis02 = $anzahl02 * $monate02 * 5;

$gesamtpreis03 = $anzahl03 * 40;
$monatepreis03 = $monate03 * 5;
$buchungspreis03 = $gesamtpreis03 + $monatepreis03;

// Berechnung des Gesamtpreise sowie MwSt.
$Betrag= $buchungspreis + $buchungspreis02 + $buchungspreis03;
$mwst = $Betrag / 100 * 19;
$mwsatz = 1.19;
$gesamtsumme = $Betrag * $mwsatz;
?>
<div style="left: 0px; top: 0px; width: 435px; height: 375px; position: absolute; z-index: 1; overflow: auto;">
<div style="left: 27px; top: 3px; width: 344px; height: 47px; position: absolute; z-index: 2;"><p class="TextHead">Ihre Bestelldaten</p>
</div>
<div style="left: 0px; top: 60px; width: 420px; position: absolute; z-index: 3;">
<form action="<?=$_SERVER[PHP_SELF]; ?>" method="post" name="shopbestellung" class="titel" onSubmit="return isValid()">
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="175">Anzahl Produkt 1:<br />
Preis fürProdukt 1:<br />
Buchungszeitraum:<br />
Monatspreis gesamt:<br />
Gesamtpreis:</td>
<td width="245"><?php echo $anzahl01; ?> Stück<br />
<?php echo $gesamtpreis01; ?> €<br />
<?php echo $monate01; ?> Monate<br />
<?php echo $gesamtpreis01; ?> €<br />
<?php echo $buchungspreis01; ?> €</td>
</tr>
</table><br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="175">Anzahl Produkt 2:<br />
Buchungszeitraum:<br />
Gesamtpreis:</td>
<td width="245"><?php echo $anzahl02; ?> Stück<br />
<?php echo $monate02 ?> Monate<br />
<?php echo $buchungspreis02; ?> €</td>
</tr>
</table><br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="175">Anzahl Profi Produkt:<br />
Preis Profi Produkt:<br />
Buchungszeitraum:<br />
Monatspreis gesamt:<br />
Gesamtpreis:</td>
<td width="244"><?php echo $anzahl03; ?> Stück<br />
<?php echo $gesamtpreis03; ?> €<br />
<?php echo $monate03; ?> Monate<br />
<?php echo $monatepreis03; ?> €<br />
<?php echo $buchungspreis03; ?> €</td>
</tr>
</table><br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="175"><u>Zwischenumme:</u><br />
19% Mwst:<br />
<strong>Gesamtbetrag:</strong></td>
<td width="245"><u><?php echo $Betrag; ?> €</u><br />
<?php echo $mwst; ?> €<br />
<strong><?php echo $gesamtsumme; ?> €</strong></td>
</tr>
</table><br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="175">Name:<br />
Vorname:<br />
Strasse:<br />
Postleitzahl:<br />
Ort:<br />
Telefon:<br />
E-Mail:</td>
<td width="245"><?php echo $name; ?><br />
<?php echo $vorname; ?><br />
<?php echo $strasse; ?><br />
<?php echo $plz; ?><br />
<?php echo $ort; ?><br />
<?php echo $telefon; ?><br />
<?php echo $email; ?><br /></td>
</tr>
</table><br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="175">Kontoinhaber:<br />
Name der Bank:<br />
Bankleitzahl:<br />
Kontonummer:<br />
IBAN:</td>
<td width="245"><?php echo $kto_inhaber; ?><br />
</tr>
</table><br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60" height="23">&nbsp;</td>
<td width="360"> M&ouml;chten Sie eine Kopie Ihrer Bestellung erhalten?
<input name="kopie" type="checkbox" class="inhalte" value="checked" checked="checked" <?=$_POST['kopie']; ?> /></td><?php echo $bankname; ?><br />
<?php echo $blz; ?><br />
<?php echo $kto_nummer; ?><br />
<?php echo $iban; ?></td>
<?php
echo'';
} else {
$email = '

Anzahl Produkt 1:
'.$_POST['anzahl 01'].'

Preis für Produkt 1:
'.$_POST['gesamtpreis01'].'

Buchungszeitraum:
'.$_POST['monate01'].'

Monatspreis gesamt:
'.$_POST['gesamtpreis01'].'

Gesamtpreis:
'.$_POST['buchungspreis01'].'

Anzahl Zusatzprodukt:
'.$_POST['anzahl02'].'

Buchungszeitraum:
'.$_POST['monate02'].'

Gesamtpreis:
'.$_POST['buchungspreis02'].'

Anzahl Profi Zusatz:
'.$_POST['anzahl03'].'

Preis Profi Zusatz:
'.$_POST['gesamtpreis03'].'

Buchungszeitraum:
'.$_POST['monate03'].'

Monatspreis gesamt:
'.$_POST['gesamtpreis03'].'

Gesamtpreis:
'.$_POST['buchungspreis03'].'

E-Mail:
'.$_POST['email'].'

Kopie der Nachricht:
'.$_POST['kopie'].'';

if (@mail("test@test.de",
"Neue Nachricht vom Kontaktformular",
$email)) {
echo "<script>document.location='danke.php';</script>";
} else {
echo "<script>document.location='fehler.php';</script>";
}
if ($_POST['kopie']) {
if (@mail($_POST['email'],
"Kopie Ihrer email an mich",
$email)) {
echo "<script>document.location='danke.php';</script>";
}
}
}

function isEmail($email) {
$nonascii = "\x80-\xff";
$nqtext = "[^\\$nonascii\015\012\"]";
$qchar = "\\[^$nonascii]";
$protocol = "(?:mailto:)";
$normuser = "[a-zA-Z0-9][a-zA-Z0-9_.-]*";
$quotedstring = "\"(?:$nqtext|$qchar)+\"";
$user_part = "(?:$normuser|$quotedstring)";
$dom_mainpart = "[a-zA-Z0-9][a-zA-Z0-9._-]*\.";
$dom_subpart = "(?:[a-zA-Z0-9][a-zA-Z0-9._-]*\.)*";
$dom_tldpart = "[a-zA-Z]{2,5}";
$domain_part = "$dom_subpart$dom_mainpart$dom_tldpart";
$regex = "$protocol?$user_part\@$domain_part";
if (preg_match("/^$regex$/",$email)) {
return true;
}
return false;
}
?>
</tr>
</table>
<br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60" height="23">&nbsp;</td>
<td width="60"><input type="submit" name="senden" value="verbindlich bestellen" /></td>
<td>&nbsp;</td>
</tr>
</table>
</form>
</body>
</html>

X

PHP Bestellformular - Inhalte an Datei übergeben (zur Überprüfung) und dann per email senden

Intermedia
Beiträge gesamt: 1287

6. Aug 2014, 08:33
Beitrag # 2 von 4
Beitrag ID: #530737
Bewertung:
(5453 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Moin,

das ist Murks was du da machst.

Siehe hier, da stehen die Antworten schon: http://www.hilfdirselbst.ch/..._P524160.html#524160

Formularfelder und ID's mit einer Zahl zu beginnen ist erst ab HTML 5 erlaubt (glaub das gelesen zu haben).

Namen und ID's sollten nicht die gleiche Bezeichnung haben.

edit: Was soll denn eigentlich Javascript innerhalb von PHP?

Fang damit an dann kann man weitersehen wenn es Probleme gibt.

Gruß Sven


http://www.aurahysil.de?hds Mit Aurahysil Freizeit schaffen - Beschichtungen der besonderen Art - http://www.intermedia-bg.de?hds INTERMEDIA bürogemeinschaft


als Antwort auf: [#530716]
(Dieser Beitrag wurde von Intermedia am 6. Aug 2014, 08:35 geändert)

PHP Bestellformular - Inhalte an Datei übergeben (zur Überprüfung) und dann per email senden

homeedition
Beiträge gesamt: 196

6. Aug 2014, 12:24
Beitrag # 3 von 4
Beitrag ID: #530750
Bewertung:
(5415 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich habe es hinbekommen das man die Daten versenden kann ABER leider werden nur die Inhalte per eMail übetragen die ich auf der Formularseite eingetragen habe.

Auf der Übersichtsseite habe ich noch erweiterte Inalte die sich aus der Berechnung von Variablen ergeben, diese werden an die eMail nicht mitgesendet?!

Woran kann das liegen?

In der eMail kommt folgendes an:
Anzahl:
4

Preis für Artikel:


Buchungszeitraum:
3

Monatspreis gesamt:


Gesamtpreis:


function.inc.php
Code
<?php 
function form_daten() {
if (isset($_POST)) {
foreach ($_POST as $key => $element) {
echo "<input type=\"hidden\" name=\"$key\" value=\"$element\">";
}
}
else {
foreach ($_GET as $key => $element) {
echo "<input type=\"hidden\" name=\"$key\" value=\"$element\">";
}
}
}
?>


shop_01.php
Code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<style type="text/css">
@import "http://fonts.googleapis.com/css?family=Open+Sans+Condensed:300,300italic,700";
@import "http://fonts.googleapis.com/css?family=Open+Sans:600,600italic,700,700italic,800,800italic,400italic,400,300italic,300";
<!--
.TextHead {
color: #0095c0;
font-family: Open Sans Condensed,sans-serif;
font-size: 16pt;
font-weight: bold;
line-height: 1.2;
}
.Fliesstext {
color: #000000;
font-family: Open Sans,sans-serif;
font-size: 8pt;
font-weight: normal;
letter-spacing: 1px;
line-height: 1.7;
}
.titel_smal {
font-family: Verdana;
font-size: 7pt;
font-style: normal;
font-variant: normal;
text-align: left;
line-height: 17px;
color: #000;
}
.mailerror {
font-family: Verdana;
font-size: 9pt;
font-style: normal;
font-variant: normal;
text-align: left;
color: #FF0000;
}
.inhalte {
font-family: Verdana;
font-size: 9pt;
font-style: normal;
font-variant: normal;
text-align: left;
line-height: 17px;
color: #000;
}
#wrapper {
position: absolute;
width: 785px;
height: 325px;
z-index: 1;
left: 0px;
top: 0px;
}
#formular {
position: absolute;
width: 785px;
height: 320px;
z-index: 2;
left: 0px;
top: 0;
}
#vorstellung {
position: absolute;
width: 232px;
height: 43px;
z-index: 3;
left: 22px;
top: 252px;
}
-->
</style>
<title>seite1</title></head>
<body onload="initPage()">
<div style="left: 0px; top: 0px; width: 435px; height: 375px; position: absolute; z-index: 1; overflow: auto;">
<div style="left: 27px; top: 3px; width: 344px; height: 47px; position: absolute; z-index: 2;"><p class="TextHead">Einfach hier im Shop kaufen.</p>
</div>
<div style="left: 0px; top: 60px; width: 420px; position: absolute; z-index: 3;">
<form name="form1" method="post" action="shop_02.php">
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60"><select name="anzahl">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select></td>
<td>Artikel</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>Ein tolles Teil und nur für Sie pro Stück<strong>5 €</strong></td>
</tr>
</table>
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60">&nbsp;</td>
<td width="60"><select name="monate">
<option value="3">3</option>
<option value="3">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select></td>
<td>Anzahl der Monate (Mindestdauer 3 Monate)</td>
</tr>
<tr>
<td width="60" height="23">&nbsp;</td>
<td width="60">&nbsp;</td>
<td>je Monat <strong>12.50 €<br />
<br />
</strong></td>
</tr>
<tr>
<td colspan="3">E-Mail</td>
</tr>
<tr>
<td colspan="3"><input name="email" type="text" size="57" /></td>
</tr>
<br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60" height="23">&nbsp;</td>
<td width="60"><input type="submit" name="Submit" value="weiter" /></td>
<td>&nbsp;</td>
</tr>
</table>
</form>
</div>
</div>
</body>


shop2.php
Code
<?php include("function.inc.php"); ?> 
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
@import "http://fonts.googleapis.com/css?family=Open+Sans+Condensed:300,300italic,700";
@import "http://fonts.googleapis.com/css?family=Open+Sans:600,600italic,700,700italic,800,800italic,400italic,400,300italic,300";
<!--
.TextHead {
color: #0095c0;
font-family: Open Sans Condensed,sans-serif;
font-size: 16pt;
font-weight: bold;
line-height: 1.2;
}
.Fliesstext {
color: #000000;
font-family: Open Sans,sans-serif;
font-size: 8pt;
font-weight: normal;
letter-spacing: 1px;
line-height: 1.7;
}
.titel_smal {
font-family: Verdana;
font-size: 7pt;
font-style: normal;
font-variant: normal;
text-align: left;
line-height: 17px;
color: #000;
}
.mailerror {
font-family: Verdana;
font-size: 9pt;
font-style: normal;
font-variant: normal;
text-align: left;
color: #FF0000;
}
.inhalte {
font-family: Verdana;
font-size: 9pt;
font-style: normal;
font-variant: normal;
text-align: left;
line-height: 17px;
color: #000;
}
#wrapper {
position: absolute;
width: 785px;
height: 325px;
z-index: 1;
left: 0px;
top: 0px;
}
#formular {
position: absolute;
width: 785px;
height: 320px;
z-index: 2;
left: 0px;
top: 0;
}
#vorstellung {
position: absolute;
width: 232px;
height: 43px;
z-index: 3;
left: 22px;
top: 252px;
}
-->
</style>
<!-- .......................................................................... -->
<!-- Anfang Formular -->
<!-- .......................................................................... -->
<script language=JavaScript>
<!--
function isValid() {

var msg = "";

if (shopbestellung.email.value.indexOf("@") < 1 ||
shopbestellung.email.value.indexOf(".") < 1) {
msg += "- Die E-Mail-Adresse ist syntaktisch nicht korrekt.\n";
}

if(shopbestellung.name.value == "") {
msg += "- Leeres Feld: Betreff:\n";
}

if(shopbestellung.vorname.value == "") {
msg += "- Leeres Feld: Nachricht:\n";
}

if(msg == "") {
return true;
}
alert(msg);
return false;
}
-->
</script>
<?php
$formularAnzeigen = false;
if (!empty($_POST["senden"]) && (
empty($_POST["anzahl"]) ||
empty($_POST["monate"]))) {
$formularAnzeigen = true;
echo '<span class="mailerror">Bitte alle Pflichtfelder ausfuellen.</span>';
} else if (!empty($_POST["senden"]) &&
!isEmail($_POST["email"])) {
$formularAnzeigen = true;
echo '<span class="mailerror">Die E-Mail-Adresse ist nicht korrekt.</span>';
} else if (empty($_POST["senden"])) {
$formularAnzeigen = true;
}
if ($formularAnzeigen) {
?>
<title>seite2.php</title>
</head>
<body>
<?php
// Auslesen der Variablen
$anzahl = $_POST["anzahl"];
$monate = $_POST["monate"];
$email = $_POST["email"];

// Berechnung artikelpreise und Anzahl
$gesamtpreis = $anzahl * 5;
$monatepreis = $monate * 12.50;
$buchungspreis = $gesamtpreis + $monatepreis;
?>
<div style="left: 0px; top: 0px; width: 435px; height: 375px; position: absolute; z-index: 1; overflow: auto;">
<div style="left: 27px; top: 3px; width: 344px; height: 47px; position: absolute; z-index: 2;"><p class="TextHead">Ihre Bestelldaten</p>
</div>
<div style="left: 0px; top: 60px; width: 420px; position: absolute; z-index: 3;">
<form action="<?=$_SERVER[PHP_SELF]; ?>" method="post" name="shopbestellung" class="titel" onSubmit="return isValid()">
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="175">Artikel:<br />
Preis für Artikel:<br />
Buchungszeitraum:<br />
Monatspreis gesamt:<br />
Gesamtpreis:</td>
<td width="245"><?php echo $anzahl; ?> Stück<br />
<?php echo $gesamtpreis; ?> €<br />
<?php echo $monate; ?> Monate<br />
<?php echo $monatepreis; ?> €<br />
<?php echo $buchungspreis; ?> €</td>
</tr>
</table>
<?php form_daten(); ?>
<?php
echo'';
} else {
$email = '

Anzahl:
'.$_POST['anzahl'].'

Preis für Artikel:
'.$_POST['gesamtpreis'].'

Buchungszeitraum:
'.$_POST['monate'].'

Monatspreis gesamt:
'.$_POST['monatepreis'].'

Gesamtpreis:
'.$_POST['buchungspreis'].'';

if (@mail("test@test.de",
"Neue Nachricht vom Kontaktformular",
$email)) {
echo "<script>document.location='danke.php';</script>";
} else {
echo "<script>document.location='fehler.php';</script>";
}
if ($_POST['kopie']) {
if (@mail($_POST['email'],
"Kopie Ihrer email an AIO",
$email)) {
echo "<script>document.location='danke.php';</script>";
}
}
}

function isEmail($email) {
$nonascii = "\x80-\xff";
$nqtext = "[^\\$nonascii\015\012\"]";
$qchar = "\\[^$nonascii]";
$protocol = "(?:mailto:)";
$normuser = "[a-zA-Z0-9][a-zA-Z0-9_.-]*";
$quotedstring = "\"(?:$nqtext|$qchar)+\"";
$user_part = "(?:$normuser|$quotedstring)";
$dom_mainpart = "[a-zA-Z0-9][a-zA-Z0-9._-]*\.";
$dom_subpart = "(?:[a-zA-Z0-9][a-zA-Z0-9._-]*\.)*";
$dom_tldpart = "[a-zA-Z]{2,5}";
$domain_part = "$dom_subpart$dom_mainpart$dom_tldpart";
$regex = "$protocol?$user_part\@$domain_part";
if (preg_match("/^$regex$/",$email)) {
return true;
}
return false;
}
?>
</tr>
</table>
<br />
<table width="420" border="0" cellspacing="0" cellpadding="0" class="Fliesstext">
<tr>
<td width="60" height="23">&nbsp;</td>
<td width="60"><input type="submit" name="senden" value="verbindlich bestellen" /></td>
<td>&nbsp;</td>
</tr>
</table>
</form>
</body>
</html>


Vielen lieben Dank :)


als Antwort auf: [#530737]

PHP Bestellformular - Inhalte an Datei übergeben (zur Überprüfung) und dann per email senden

homeedition
Beiträge gesamt: 196

12. Aug 2014, 12:23
Beitrag # 4 von 4
Beitrag ID: #530923
Bewertung:
(5313 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Vielen Dank :)

Es läuft jetzt (fast) alles bis auf ein Berechnungsproblem bzw. IF-Anweisungsproblem.

ich habe dafür einen neuen Thread eröffnet:
http://www.hilfdirselbst.ch/...;;page=unread#unread


als Antwort auf: [#530750]
X

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
21.01.2021 - 22.01.2021

Digicomp Academy AG, Bern oder Basel
Donnerstag, 21. Jan. 2021, 08.30 Uhr - Freitag, 22. Jan. 2021, 17.00 Uhr

Kurs

Dieser Basic-Kurs ist der perfekte Einstieg in die Welt von InDesign, dem vielseitigen Layout-Programm. Sie lernen, wie InDesign aufgebaut ist, wie saubere Dokumente erstellt werden und wie man korrekt mit gelieferten InDesign-Projekten umgeht.

Dauer: 2 Tage
Preis: CHF 1'400.–

Ja

Organisator: Digicomp Academy AG

Kontaktinformation: Kundenberater-Team, E-Mailkundenberatung AT digicomp DOT ch

digicomp.ch/d/INDEM1

Veranstaltungen
21.01.2021

Illustrator - das unbekannte Wesen

Online
Donnerstag, 21. Jan. 2021, 19.00 Uhr

Vortrag

Millionen Funktionen, und immer kommen neue dazu! Monika Gause ist jeden Januar aufs Neue ein gern gesehener Gast bei der IDUG Stuttgart. - Sie bringt alle Neuerungen mit, die 2020 dazukamen und jede Menge Tipps und Tricks. - Zudem wird sie uns informieren, was wir in Illustrator beachten müssen, wenn wir Daten fürs Web erstellen bzw. aufbereiten. - Wichtig zu wissen: "Dos and Don'ts" in Illustrator. Welche Fehler sollte man dringend vermeiden und was muss man unbedingt tun, damit es Spaß macht mit Illustrator zu arbeiten. - Dieses Jahr hast Du zusätzlich die Möglichkeit Monika im Voraus Fragen zu stellen. Fülle dieses Formular mit deinen Fragen; auch Beispieldateien sind anfügbar: https://forms.gle/fJmF8C6MjbDoEhED8

Nein

Organisator: InDesign Usergroup Stuttgart

Kontaktinformation: Christoph Steffens, E-Mailidug AT satzkiste DOT de

https://idugs67.eventbrite.de/

IDUGS #67 Illustrator mit Monika Gause

Neuste Foreneinträge


Verschiedene Netzwerke Handeln

Netzwerklaufwerke verbinden -> Bei nicht verfügbar Fehlermeldung unterdrücken

Fortlaufende Nummerierung der Druckbogen

Ende der Unterstützung von Flash Player - und jetzt?

Bilder High> Low

weitere peinliche Fragen zu Selbstverständlichkeiten

WLAN-Verbindung mit iPhone 11

In Illustrator einen Kreis zerschneiden bzw. erstmal sinnvoll anlegen

Event 'mausedown': Kriege das Kontext-Menü des Browsers nicht weg...

Skript-Ordner
medienjobs