4 $_REQUEST['login'] = $User['name'];
6 $error = mailform($_REQUEST);
8 print "<p class=warn>$error</p>\n\n";
12 function mailform($input = [])
14 $source = empty($input['subject']) ? 'reactie' : $input['subject'];
16 return 'Geen gegevens ontvangen. Probeer het nog eens.';
18 if (empty($input['email']) or !preg_match('/.+@.+\..+/', $input['email'])) {
19 return 'Een geldig e-mailadres is verplicht zodat we antwoord kunnen geven.';
21 if (isset($input['naam']) and empty($input['naam'])) {
22 return 'Geef ook een naam waarmee we u kunnen aanspreken.';
25 $rcpt = 'info@'.$_SERVER['HTTP_HOST'];
26 $subject = "Formulier {$_SERVER['HTTP_HOST']}: $source";
27 $reply = preg_match('/\A\w+@\w+\.[a-z]+\z/', $input['email'])
28 ? $input['email'] : $rcpt;
29 $header = "From: $reply";
32 'X-Accept-Language' => 'HTTP_ACCEPT_LANGUAGE',
33 'User-Agent' => 'HTTP_USER_AGENT',
34 ) as $mailhdr => $serverhdr) {
35 if (!$_SERVER[$serverhdr]) continue;
36 $header .= "\r\n$mailhdr: ".$_SERVER[$serverhdr];
39 $origin = $_SERVER['REMOTE_ADDR'];
40 $origin .= sprintf(' (%s)', gethostbyaddr($origin));
41 $body = "Ingevuld vanaf $origin:\r\n\r\n";
43 foreach ($input as $k => $v) {
44 $body .= "$k: $v\r\n";
47 $sent = mail($rcpt, $subject, $body, $header);
49 return 'Helaas ging er iets mis bij het doorvoeren. Probeer het later nog eens.';
53 print '<p>Bedankt voor uw bestelling. U ontvangt z.s.m. de bevestiging van deze bestelling via uw opgegeven e-mailadres.</p>';
56 print '<p>Bedankt voor uw reactie!</p>';