Working on error handling
This commit is contained in:
@@ -18,12 +18,14 @@ table.schrauben {
|
|||||||
table-layout: fixed;
|
table-layout: fixed;
|
||||||
}
|
}
|
||||||
|
|
||||||
td.right {
|
td.error {
|
||||||
text-align: right;
|
text-align: end;
|
||||||
|
padding-right: 10px;
|
||||||
}
|
}
|
||||||
td.left {
|
|
||||||
text-align: left;
|
p.error {
|
||||||
padding: 0px 10px;
|
color: red;
|
||||||
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
textarea {
|
textarea {
|
||||||
@@ -67,11 +69,6 @@ input.error {
|
|||||||
border-color: inherit;
|
border-color: inherit;
|
||||||
}
|
}
|
||||||
|
|
||||||
p.error_message {
|
|
||||||
color: red;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.grid-container {
|
.grid-container {
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: auto auto;
|
grid-template-columns: auto auto;
|
||||||
|
|||||||
96
index.php
96
index.php
@@ -89,13 +89,14 @@
|
|||||||
* mengen
|
* mengen
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
$mail_from = isset($_POST['email']) ? $_POST['email'] : '';
|
$mail_from = isset($_POST['email']) ? $_POST['email'] : '';
|
||||||
$name = isset($_POST['name']) ? $_POST['name'] : '';
|
$name = isset($_POST['name']) ? $_POST['name'] : '';
|
||||||
$strasse = isset($_POST['strasse']) ? $_POST['strasse'] : '';
|
$strasse = isset($_POST['strasse']) ? $_POST['strasse'] : '';
|
||||||
$stadt = isset($_POST['stadt']) ? $_POST['stadt'] : '';
|
$stadt = isset($_POST['stadt']) ? $_POST['stadt'] : '';
|
||||||
$plz = isset($_POST['plz']) ? $_POST['plz'] : '';
|
$plz = isset($_POST['plz']) ? $_POST['plz'] : '';
|
||||||
$telefon = isset($_POST['telefon']) ? $_POST['telefon'] : '';
|
$telefon = isset($_POST['telefon']) ? $_POST['telefon'] : '';
|
||||||
$schrauben = isset($_POST['schrauben']) ? $_POST['schrauben'] : '';
|
$schrauben = isset($_POST['schrauben']) ? $_POST['schrauben'] : [];
|
||||||
$notiz = isset($_POST['notiz']) ? $_POST['notiz'] : '';
|
$notiz = isset($_POST['notiz']) ? $_POST['notiz'] : '';
|
||||||
$sparpaket = isset($_POST['sparpaket']) ? $_POST['sparpaket'] : '';
|
$sparpaket = isset($_POST['sparpaket']) ? $_POST['sparpaket'] : '';
|
||||||
$senden = isset($_POST['senden']) ? $_POST['senden'] : '';
|
$senden = isset($_POST['senden']) ? $_POST['senden'] : '';
|
||||||
@@ -103,45 +104,56 @@
|
|||||||
$mengen = '';
|
$mengen = '';
|
||||||
$text = '';
|
$text = '';
|
||||||
|
|
||||||
$ok = true;
|
$ok = false;
|
||||||
|
|
||||||
if ($senden == "ok") {
|
$form_errors = [];
|
||||||
|
$screw_errors = [];
|
||||||
|
|
||||||
|
if ($senden == "Abschicken") {
|
||||||
foreach ($schrauben as $key => $value) {
|
foreach ($schrauben as $key => $value) {
|
||||||
if ($value >= 10) {
|
if ($value >= 10) {
|
||||||
$mengen .= "$key: $value\n";
|
$mengen .= "$key: $value\n";
|
||||||
}
|
}
|
||||||
elseif ($value > 0 && $value < 10) {
|
elseif ($value > 0 && $value < 10) {
|
||||||
$status .= "Es müssen mindestens 10 Schrauben bestellt werden.<br />";
|
$status .= "Es müssen mindestens 10 Schrauben bestellt werden.<br />";
|
||||||
|
$screw_errors[$key] = "Es müssen mindestens 10 Schrauben bestellt werden.";
|
||||||
$ok = false;
|
$ok = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (empty($mail_from)) {
|
if (empty($mail_from)) {
|
||||||
$status .= "Bitte Mailadresse angeben.<br />";
|
$status .= "Bitte Mailadresse angeben.<br />";
|
||||||
|
$form_errors[] = "Bitte E-Mail-Adresse angeben";
|
||||||
$ok = false;
|
$ok = false;
|
||||||
}
|
}
|
||||||
if (empty($name)) {
|
if (empty($name)) {
|
||||||
$status .= "Bitte Name / Vorname angeben.<br />";
|
$status .= "Bitte Name / Vorname angeben.<br />";
|
||||||
|
$form_errors[] = "Bitte Name / Vorname angeben.";
|
||||||
$ok = false;
|
$ok = false;
|
||||||
}
|
}
|
||||||
if (empty($strasse)) {
|
if (empty($strasse)) {
|
||||||
$status .= "Bitte Straße und Hausnummer angeben.<br />";
|
$status .= "Bitte Straße und Hausnummer angeben.<br />";
|
||||||
|
$form_errors[] = "Bitte Straße und Hausnummer angeben.";
|
||||||
$ok = false;
|
$ok = false;
|
||||||
}
|
}
|
||||||
if (empty($stadt)) {
|
if (empty($stadt)) {
|
||||||
$status .= "Bitte Stadt angeben.<br />";
|
$status .= "Bitte Stadt angeben.<br />";
|
||||||
|
$form_errors[] = "Bitte Stadt angeben.";
|
||||||
$ok = false;
|
$ok = false;
|
||||||
}
|
}
|
||||||
if (empty($plz)) {
|
if (empty($plz)) {
|
||||||
$status .= "Bitte Postleitzahl eingeben.<br />";
|
$status .= "Bitte Postleitzahl eingeben.<br />";
|
||||||
|
$form_errors[] = "Bitte Postleitzahl angeben.";
|
||||||
$ok = false;
|
$ok = false;
|
||||||
}
|
}
|
||||||
if (empty($telefon)) {
|
if (empty($telefon)) {
|
||||||
$status .= "Bitte eine Telefonnummer angeben.<br />";
|
$status .= "Bitte eine Telefonnummer angeben.<br />";
|
||||||
|
$form_errors[] = "Bitte Telefonnummer angeben.";
|
||||||
$ok = false;
|
$ok = false;
|
||||||
}
|
}
|
||||||
if (empty($mengen)) {
|
if (empty($mengen)) {
|
||||||
$status .= "Es muss mindestens ein Schraubentyp bestellt werden.";
|
$status .= "Es muss mindestens ein Schraubentyp bestellt werden.";
|
||||||
|
$form_errors[] = "Es muss mindestens ein Schraubentyp bestellt werden.";
|
||||||
$ok = false;
|
$ok = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -167,7 +179,7 @@
|
|||||||
$headers .= "MIME-Version: 1.0\r\n";
|
$headers .= "MIME-Version: 1.0\r\n";
|
||||||
$headers .= "\r\n";
|
$headers .= "\r\n";
|
||||||
|
|
||||||
$mail_ok = mail($mail_to, $subject, $text, $headers);
|
//$mail_ok = mail($mail_to, $subject, $text, $headers);
|
||||||
|
|
||||||
if ($mail_ok) {
|
if ($mail_ok) {
|
||||||
$status .= "Mail erfolgreich verschickt.<br />";
|
$status .= "Mail erfolgreich verschickt.<br />";
|
||||||
@@ -192,10 +204,16 @@
|
|||||||
<script type="text/javascript" src="js/form_helper.js" defer></script>
|
<script type="text/javascript" src="js/form_helper.js" defer></script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
<pre><?= var_dump($_POST); ?></pre>
|
||||||
|
|
||||||
|
<pre><?= var_dump($form_errors); ?></pre>
|
||||||
|
|
||||||
|
<pre><?= var_dump($schrauben); ?></pre>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div>
|
<div>
|
||||||
<a href="http://www.rundkopfschlitzschrauben.de"><h1>DIN 86 Metrisch Rundkopf-Schlitzschrauben</h1></a>
|
<a href="/"><h1>DIN 86 Metrisch Rundkopf-Schlitzschrauben</h1></a>
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
<tr><td colspan="2" style="font-weight: bold;">Preise:</td></tr>
|
<tr><td colspan="2" style="font-weight: bold;">Preise:</td></tr>
|
||||||
@@ -262,69 +280,81 @@
|
|||||||
';
|
';
|
||||||
|
|
||||||
foreach($values as $value) {
|
foreach($values as $value) {
|
||||||
echo '
|
$key = $value[0]." - ".$value[1];
|
||||||
<tr>
|
$has_error = array_key_exists($key, $screw_errors);
|
||||||
<td>'.$value[0].'</td>
|
|
||||||
|
echo '<tr>
|
||||||
|
<td>';
|
||||||
|
echo array_key_exists($key, $schrauben) ? 1 : 0;
|
||||||
|
echo '...'. $value[0].'</td>
|
||||||
<td>'.$value[1].'</td>
|
<td>'.$value[1].'</td>
|
||||||
<td><input type="text" pattern="[0-9]+" size="4" maxlength="4" name="schrauben['.$value[0].' - '.$value[1].']" value="0" /></td>
|
<td>
|
||||||
|
<input
|
||||||
|
type="text"
|
||||||
|
size="4"
|
||||||
|
maxlength="4"
|
||||||
|
name="schrauben['.$key.']"
|
||||||
|
value="'.(array_key_exists($key, $schrauben) ? $schrauben[$key] : 0).'"
|
||||||
|
class="'.($has_error ? "error" : "").'"
|
||||||
|
/>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
';
|
';
|
||||||
|
if($has_error) {
|
||||||
|
echo '
|
||||||
|
<tr>
|
||||||
|
<td colspan="3" class="error">
|
||||||
|
<span style="color:red">'. $screw_errors[$key] .'</span>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
</table>
|
</table>
|
||||||
';
|
';
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<!--
|
|
||||||
<br />
|
<br />
|
||||||
<div class="maintenance">
|
<p class="error">
|
||||||
Bedauerlicherweise besteht zurzeit ein Problem mit dem Bestell-Formular.<br />
|
<?php
|
||||||
<br />
|
foreach($form_errors as $error) {
|
||||||
Bis dieses Problem behoben ist, versucht öffnet ein Klick auf den "Abschicken"-Button in Ihrem E-Mail-Programm eine neue E-Mail mit Ihren Angaben zu verfassen.<br />
|
echo $error ."<br />";
|
||||||
Dies funktioniert nicht auf allen Geräten und nur, wenn Ihr Gerät entsprechend konfiguriert.<br />
|
}
|
||||||
<br />
|
?>
|
||||||
Sollten Sie Probleme haben, nehmen Sie bitte Kontakt per E-Mail auf.<br />
|
|
||||||
<br />
|
|
||||||
Bitte haben Sie Geduld, bis das Bestell-Formular wieder wie gewohnt funktioniert.
|
|
||||||
|
|
||||||
</div>
|
|
||||||
-->
|
|
||||||
<br />
|
|
||||||
<p class="error_message">
|
|
||||||
<?=$status;?>
|
|
||||||
</p>
|
</p>
|
||||||
<div class="grid-container">
|
<div class="grid-container">
|
||||||
<label for="name">Name / Vorname: *</label>
|
<label for="name">Name / Vorname: *</label>
|
||||||
<input type="text" name="name" id="name" value="<?=$name;?>" required />
|
<input type="text" name="name" id="name" value="<?=$name;?>" />
|
||||||
<div class="form_feedback">Name / Vorname erforderlich.</div>
|
<div class="form_feedback">Name / Vorname erforderlich.</div>
|
||||||
|
|
||||||
<label for="strasse">Straße, Hausnummer: *</label>
|
<label for="strasse">Straße, Hausnummer: *</label>
|
||||||
<input type="text" name="strasse" id="strasse" value="<?=$strasse;?>" required />
|
<input type="text" name="strasse" id="strasse" value="<?=$strasse;?>" />
|
||||||
<div class="form_feedback">Straße und Hausnummer erforderlich.</div>
|
<div class="form_feedback">Straße und Hausnummer erforderlich.</div>
|
||||||
|
|
||||||
<label for="plz">PLZ: *</label>
|
<label for="plz">PLZ: *</label>
|
||||||
<input type="text" name="plz" id="plz" value="<?=$plz;?>" required />
|
<input type="text" name="plz" id="plz" value="<?=$plz;?>" />
|
||||||
<div class="form_feedback">Postleitzahl erforderlich.</div>
|
<div class="form_feedback">Postleitzahl erforderlich.</div>
|
||||||
|
|
||||||
<label for="stadt">Stadt: *</label>
|
<label for="stadt">Stadt: *</label>
|
||||||
<input type="text" name="stadt" id="stadt" value="<?=$stadt?>" required />
|
<input type="text" name="stadt" id="stadt" value="<?=$stadt?>" />
|
||||||
<div class="form_feedback">Stadt erforderlich.</div>
|
<div class="form_feedback">Stadt erforderlich.</div>
|
||||||
|
|
||||||
<label for="email">Email: *</label>
|
<label for="email">Email: *</label>
|
||||||
<input type="email" name="email" id="email" value="<?=$mail_from;?>" required />
|
<input type="email" name="email" id="email" value="<?=$mail_from;?>" />
|
||||||
<div class="form_feedback">(Korrekte) E-Mail-Adresse erforderlich.</div>
|
<div class="form_feedback">(Korrekte) E-Mail-Adresse erforderlich.</div>
|
||||||
|
|
||||||
<label for="telefon">Telefon: *</label>
|
<label for="telefon">Telefon: *</label>
|
||||||
<input type="tel" name="telefon" id="telefon" value="<?=$telefon;?>" required />
|
<input type="tel" name="telefon" id="telefon" value="<?=$telefon;?>" />
|
||||||
<div class="form_feedback">Bitte Telefonnummer eingeben.</div>
|
<div class="form_feedback">Bitte Telefonnummer eingeben.</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<p>Notiz:</p>
|
<p>Notiz:</p>
|
||||||
<textarea name="notiz"><?=$notiz;?></textarea>
|
<textarea name="notiz"><?=$notiz;?></textarea>
|
||||||
<p>Mit Sternchen markierte Felder müssen ausgefüllt sein.</p>
|
<p>Mit Sternchen markierte Felder müssen ausgefüllt sein.</p>
|
||||||
<button type="submit" name="senden" value="ok">Abschicken</button>
|
<input type="submit" name="senden" value="Abschicken" />
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
|
|||||||
Reference in New Issue
Block a user