3 print mailform($_REQUEST);
6 function mailform($input = [])
8 $source = empty($input['subject']) ? 'reactie' : $input['subject'];
10 return 'Geen gegevens ontvangen. Probeer het nog eens.';
12 if (empty($input['email']) or !preg_match('/.+@.+\..+/', $input['email'])) {
13 return 'Een geldig e-mailadres is verplicht. Ga terug en probeer het nog eens.';
15 if (isset($input['naam']) and empty($input['naam'])) {
16 return 'Er ontbraken vereiste gegevens. Ga terug en probeer het nog eens.';
19 $rcpt = 'info@covexcelsiorleiderdorp.nl';
20 $subject = "Formulier $_SERVER[HTTP_HOST]: $source";
21 $reply = preg_match('/\A\w+@\w+\.[a-z]+\z/', $input['email'])
22 ? $input['email'] : $rcpt;
23 $header = "From: $reply";
26 'X-Accept-Language' => 'HTTP_ACCEPT_LANGUAGE',
27 'User-Agent' => 'HTTP_USER_AGENT',
28 ) as $mailhdr => $serverhdr) {
29 if (!$_SERVER[$serverhdr]) continue;
30 $header .= "\r\n$mailhdr: ".$_SERVER[$serverhdr];
33 $origin = $_SERVER['REMOTE_ADDR'];
34 $origin .= sprintf(' (%s)', gethostbyaddr($origin));
35 $body = "Ingevuld vanaf $origin:\r\n\r\n";
37 foreach ($input as $k => $v) {
38 $body .= "$k: $v\r\n";
41 $sent = mail($rcpt, $subject, $body, $header);
43 return 'Helaas ging er iets mis bij het doorvoeren. Probeer het later nog eens.';
45 if ($source == 'bestelling')
46 print '<p>Bedankt voor uw bestelling. U ontvangt z.s.m. de bevestiging van deze bestelling via uw opgegeven e-mailadres.</p>';
48 print '<p>Bedankt voor uw reactie!</p>';