Ik ben al een tijdje bezig met een offerte formulier. Ik krijg het maar niet werkend.
Verder heb ik ook nog niet zoveel ervaring met PHP. Het formulier reageert nergens op bij het klikken op de submit button.
Alle variabelen zijn benoemd.
Alvast hartelijk dankt voor de hulp/uitleg.
Groeten Gabriela
<?php
if(!isset($_POST['submit']))
{
$company = $_POST['companyname'];
$name = $_POST['name'];
$visitor_email = $_POST['email'];
$travelers = $_POST['persons'];
$bagage = $_POST['luggage'];
$departaddress = $_POST['depart'];
$datedepart = $_POST['departdate'];
$dephour = $_POST['departhour'];
$depminute = $_POST['departminute'];
$destinationaddress = $_POST['destination'];
$datereturn = $_POST['returndate'];
$rethour = $_POST['returnhour'];
$retminute = $_POST['returnminute'];
$extrastops = $_POST['stops'];
$type = $_POST['bustype'];
$message = $_POST['comments'];
}
//Validate first
if(empty($name)||empty($visitor_email))
{
echo "Naam en emailadres zijn verplicht!";
exit;
}
if(IsInjected($visitor_email))
{
echo "Ongeldige invoer";
exit;
}
$email_from = '[email protected]';
$email_subject = "Offerte aanvraag";
$email_body = "Bedrijfsnaam:" .$companyname."\n". "Naam:" .$name."\n". "Email:" .$visitor_email."\n". "Aantal personen:" .$travelers. "\n"."Bagage:" .$bagage. "\n"."Vertrekadres:" .$departaddress. "\n"."Vertrekdatum:" .$datedepart. "\n". "Vertrek tijdstip:" .$dephour. "\n". "" .$depminute. "\n". "Bestemming:" .$destinationaddress. "\n". "Retourdatum:" .$datereturn. "\n". "Retour tijdstip:" .$rethour. "" .$retminute. "\n"."Extra stops:" .$extrastops. "\n". "Type bus:" .$type. "\n"."Bericht:" .$message"\n";
$to = "[email protected]";
$headers = "From: $email_from \r\n";
$headers = "Reply-To: $visitor_email \r\n";
mail($to,$email_subject,$email_body, $headers);
header('Location: bedankt.html');
function IsInjected($str)
{
$injections = array('(\n+)',
'(\r+)',
'(\t+)',
'(%0A+)',
'(%0D+)',
'(%08+)',
'(%09+)'
);
$inject = join('|', $injections);
$inject = "/$inject/i";
if(preg_match($inject,$str))
{
return true;
}
else
{
return false;
}
}
?>
HTML form:
<form method="post" action="send_quotation.php" name="contactform" >
<div id="message"></div>
<div class="f-row">
<div class="one-half">
<label for="companyname">Bedrijfsnaam</label>
<input type="text" name="companyname" id="companyname" />
</div>
<div class="one-half">
<label for="name">Voor- en achternaam</label>
<input type="text" name="name" id="name" />
</div>
<div class="one-half">
<label for="email">Emailadres</label>
<input type="email" name="email" id="email" />
</div>
<div class="one-half">
<label for="persons">Aantal reizigers</label>
<input type="number" name="persons" id="persons" />
</div>
<div class="one-half">
<label for="luggage">Aantal bagagestukken</label>
<input type="number" name="luggage" id="luggage" />
</div>
</div>
<hr>
<div class="f-row">
<div class="full-width">
<label for="depart">Vertrekadres</label>
<input type="text" name="depart" id="depart" />
</div>
<div class="one-half">
<label for="departdate">Datum vertrek</label>
<input type="text" name="departdate" id="departdate" value=" dd-mm-jjjj" />
</div>
<div class="one-fourth" >
<label for="departhour">Tijdstip vertrek</label>
<select name="departhour" >
<option> 00 </option>
<option> 01 </option>
<option> 02 </option>
<option> 03 </option>
<option> 04 </option>
<option> 05 </option>
<option> 06 </option>
<option> 07 </option>
<option> 08 </option>
<option> 09 </option>
<option> 10 </option>
<option> 11 </option>
<option> 12 </option>
<option> 13 </option>
<option> 14 </option>
<option> 15 </option>
<option> 16 </option>
<option> 17 </option>
<option> 18 </option>
<option> 19 </option>
<option> 20 </option>
<option> 21 </option>
<option> 22 </option>
<option> 23 </option>
</select>
</div>
<div class="one-fourth" >
<label for="departminute"><br/></label>
<select name="departminute" >
<option> 00 </option>
<option> 15 </option>
<option> 30 </option>
<option> 45 </option>
</select>
</div>
</div>
<hr>
<div class="f-row">
<div class="full-width">
<label for="destination">Bestemming</label>
<input type="text" name="destination" id="destination" />
</div>
<div class="one-half">
<label for="returndate">Datum terugreis</label>
<input type="text" name="returndate" id="returndate" value=" dd-mm-jjjj" />
</div>
<div class="one-fourth" >
<label for="returnhour">Tijdstip terugreis</label>
<select name="returnhour" >
<option> 00 </option>
<option> 01 </option>
<option> 02 </option>
<option> 03 </option>
<option> 04 </option>
<option> 05 </option>
<option> 06 </option>
<option> 07 </option>
<option> 08 </option>
<option> 09 </option>
<option> 10 </option>
<option> 11 </option>
<option> 12 </option>
<option> 13 </option>
<option> 14 </option>
<option> 15 </option>
<option> 16 </option>
<option> 17 </option>
<option> 18 </option>
<option> 19 </option>
<option> 20 </option>
<option> 21 </option>
<option> 22 </option>
<option> 23 </option>
</select>
</div>
<div class="one-fourth" >
<label for="returnminute"><br/></label>
<select name="returnminute">
<option> 00 </option>
<option> 15 </option>
<option> 30 </option>
<option> 45 </option>
</select>
</div>
</div>
<div class="f-row">
<div class="one-half">
<label for="stops">Aantal tussenstops</label>
<input type="text" name="stops" id="stops" />
</div>
<div class="one-half">
<label for="bustype">Gewenste bustype</label>
<select name"bustype">
<option value="" selected> Maak uw keuze </option>
<option value="max50" >Bus max 50 pers</option>
<option value="vip29" > Vip bus max 30 pers</option>
</select>
</div>
</div>
<hr>
<div class="f-row">
<div class="full-width">
<label for="comments">Extra informatie</i></label>
<textarea placeholder="Benoem hier eventueel de extra tussenstops" name="comments" id="comments" >
</textarea>
</div>
</div>
<div class="f-row">
<input type="submit" value="Verstuur" name="submit" class="btn color medium right" />
</div>
</form>
</div>