Momenteel ben ik bezig met een script voor het bestellen van foto's. Het is de bedoeling dat mensen in een formulier de gegevens opgeven, dat vervolgens na 'versturen' een pagina verschijnt waarop de ingevulde gegevens verschijnen, met de vraag of de gegevens goed zijn. Mocht dit niet het geval zijn, dan kan er teruggekeerd worden en worden verbeterd. Is alles goed, dan moet het formulier verstuurd worden per mail.

De files die ik tot nu heb gemaakt, heb ze even versimpeld

-----bestellen.html-----

<form action="bestellen_bevestig.php" method="POST">
Naam: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
Adres: <input type="text" name="adres"><br>
Aantal: <input type="text" name="aantal" size=4><p>
<input type="submit" value="Verstuur">
</form>

-----bestellen_bevestig.php-----

<form action="bedankt.php" method="GET">
<b>Naam:</b> <?php echo $_POST["name"]; ?><br>
<b>E-mail:</b> <?php echo $_POST["email"]; ?><br>
<b>Adres:</b> <?php echo $_POST["adres"]; ?><br>
<b>Aantal:</b> <?php echo $_POST["aantal"]; ?><br>
euro
<p>
<INPUT type="submit" value="Bevestig">

-----bedankt.php-----

<?php
$name = $_POST["name"];
$email = $_POST["email"];
$adres = $_POST["adres"];
$aantal = $_POST["aantal"]; ?>
<br>
<p>
Uw bestelling werd succesvol geplaatst!<br>


Maar als ik nu de bestelling wil versturen per email, dan moet ik volgens mij weer een method="post" gebruiken... Kan iemand mij een klein stapje opweg helpen? Elke hint is zeer welkom!
Er is toch wel een kenner die dit weet :O?!
Vincent schreef op 13.01.2006 20:01
Waarom kan ik

if($strError == "")
{
$Mail =" .....
}

niet weghalen zonder het script te verpesten?


Maak er eens een lege if van?

if($strError == "")
{

}
<?php
session_start ();

// zet de variabelen neer die ik ga gebruiken!!
$strError = "";
$Vnaam = "";
$Anaam = "";
$Email = "";
$Adres = "";
$Postcode = "";
$Woonplaats = "";
$Tel = "";
$EmailCheck = "";
$IP = $_SERVER['REMOTE_ADDR'];


// kijkt of er data is gepost!! dus zeg maar of er op de knop verzenden is geklikt
// zo ja, gaat ie in de if dingen uitvoeren
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
//kijk of de variabelen bestaan, zo ja geef ik daar een naam aan
if(isset($_POST['Vnaam'])) { $Vnaam = $_POST['Vnaam']; }
if(isset($_POST['Anaam'])) { $Anaam = $_POST['Vnaam']; }
if(isset($_POST['Email'])) { $Email = $_POST['Email']; }
if(isset($_POST['Adres'])) { $Adres = $_POST['Adres']; }
if(isset($_POST['Postcode'])) { $Postcode = $_POST['Postcode']; }
if(isset($_POST['Woonplaats'])) { $Woonplaats = $_POST['Woonplaats']; }
if(isset($_POST['Tel'])) { $Tel = $_POST['Tel']; }


// Toon het ip adres van de bezoeker
if(isset($_POST['IP'])) { $IP = $_SERVER['REMOTE_ADDR']; }

// zijn de checks die ik uitvoer voor email en postcode
$EmailCheck = "^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$";
$PostcodeCheck = "^[1-9]{1}[0-9]{3}[ ]{0,1}[a-zA-Z]{2}$";


// als er niks bij postcode is ingevult geef error
if($Postcode == "")
{$strError = "Je moet wel een postcode invoeren.";
// als er wel wat is ingevult check dat of het wel met 4 cijfers en 2 letters is
}else
{ if(!eregi($PostcodeCheck, $Postcode))
{ $strError = "Je moet wel een geldige postcode invoeren."; }
}
// als er niks bij email is ingevult geef error
if($Email == "")
{ $strError = "Je moet wel een emailadres opgeven.";
}else
// als er wel wat is ingevult check of het een geldig email adres is in hoevere dat kan natuulijk!!
{ if(!eregi($EmailCheck, $Email))
{ $strError = "Je moet wel een geldig emailadres opgeven."; }
}
// als er niks bij naam is ingevult geef error
if($Anaam == "")
{ $strError = "Je moet wel je naam invullen."; }

// als er niks bij naam is ingevult geef error
if($Vnaam == "")
{ $strError = "Je moet wel je naam invullen."; }
// als er geen errors zijn mag ie de mail gaan versturen
if($strError == "")
{

}
}

?>





<html>

<head>
<title>test</title>

</head>

<body>

Stap 1: Vul je persoonlijke gegevens in.

<?php echo "<b>" .$strError."</b>"; ?>

<br><br><br>


<form name="pg" method="post" action="stap2contr.php">

....

Submit gaat gewoon naar volgende pagina: werkt dus niet.. Moet ik niet een relatie leggen met form zelf?
Voor de duidelijkheid, het formulier zelf ziet er zo uit:

<form name="pg" method="post" action="stap2contr.php">

<table border="0" width="300">
<tr>
<td width="100">Voornaam:</td>
<td width="200"><input name="Vnaam" type="text" maxlength="30" value="<?= $Vnaam ?>"></td>
</tr>
<tr>
<td width="100">Achternaam:</td>
<td width="200"><input name="Anaam" type="text" maxlength="30" value="<?= $Anaam ?>"></td>
</tr>
<tr>
<td width="100">Emailadres:</td>
<td width="200"><input name="Email" type="text" maxlength="30" value="<?= $Email ?>"></td>
</tr>
<tr>
<td width="100">Postcode:</td>
<td width="200"><input name="Postcode" type="text" maxlength="10" value="<?= $Postcode ?>"></td>
</tr>
<tr>
<td width="100">Adres:</td>
<td width="200"><input name="Adres" type="text" maxlength="30" value="<?= $Adres ?>"></td>
</tr>
<tr>
<td width="100">Woonplaats:</td>
<td width="200"><input name="Woonplaats" type="text" maxlength="30" value="<?= $Woonplaats ?>"></td>
</tr>
<tr>
<td width="100">Telefoon:</td>
<td width="200"><input name="Tel" type="text" maxlength="16" value="<?= $Tel ?>"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td width="300"><div align="left">
<br><input type="submit" name="Submit" value="Volgende">
</div></td>
</tr>
</table>
</form>

Reageren