50 lines
1.9 KiB
PHP
50 lines
1.9 KiB
PHP
<?php
|
|
|
|
require_once __DIR__ . '/lib/SendMail.php';
|
|
require_once __DIR__ . '/lib/Session.php';
|
|
|
|
$session = new Session();
|
|
|
|
function validate($data) {
|
|
$hasContact = !empty(trim($data['email'] ?? '')) || !empty(trim($data['phone'] ?? ''));
|
|
return !empty(trim($data['name'] ?? '')) && $hasContact && !empty(trim($data['message'] ?? ''));
|
|
}
|
|
|
|
function isBot($data) {
|
|
return !empty($data['company']) || (($data['check'] ?? '') != 'send' && (time() - (int)($data['timestamp'] ?? 0)) <= 5);
|
|
}
|
|
|
|
if($_POST && count($_POST) > 0) {
|
|
if(isBot($_POST)) {
|
|
exit();
|
|
}
|
|
|
|
if(!validate($_POST)) {
|
|
$session->set('form', $_POST);
|
|
$session->set('alert-class', 'alert-danger');
|
|
$session->set('alert', 'Bitte füllen Sie alle Pflichtfelder aus und geben Sie mindestens eine E-Mail-Adresse oder Telefonnummer an.');
|
|
} else {
|
|
$ip = $_SERVER['REMOTE_ADDR'];
|
|
|
|
$mail = new SendMail();
|
|
if(!empty(trim($_POST['email'] ?? ''))) {
|
|
$mail->setReplyTo(trim($_POST['email']), trim($_POST['name']));
|
|
}
|
|
$mail->setTo('kontakt@dialyse-berlin.net', 'Kontaktformular');
|
|
// $mail->setTo('dominic.zirpel@web.de', 'Kontaktformular');
|
|
$mail->setSubject('Kontaktformular - Dialyse Homepage');
|
|
$mail->setBody(sprintf("Name: %s %s\nTelefon: %s\nIP: %s\nE-Mail: %s\n-----------------------------\n%s", $_POST['surname'] ?? '', $_POST['name'] ?? '', $_POST['phone'] ?? '', $ip, $_POST['email'] ?? '', $_POST['message'] ?? ''));
|
|
if($mail->send()) {
|
|
$session->remove('form');
|
|
$session->set('alert-class', 'alert-success');
|
|
$session->set('alert', 'Ihre Anfrage wurde erfolgreich verschickt');
|
|
} else {
|
|
$session->set('form', $_POST);
|
|
$session->set('alert-class', 'alert-danger');
|
|
$session->set('alert', 'Beim Verschicken Ihrer Anfrage ist ein Fehler aufgetreten!');
|
|
}
|
|
}
|
|
}
|
|
|
|
header('Location: kontakt-formular.html');
|