<?php
session_start();
if ($_SERVER["REQUEST_METHOD"] != "POST") {
    $_SESSION['captcha'] = rand(1000, 9999);
}
?>
<!DOCTYPE html>
<html>
<head>
    <title>Kontaktformular</title>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
    <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.1/css/all.css">
</head>
<body>
    <div class="container mt-5">
        <div class="row justify-content-center">
            <div class="col-md-6">
                <div class="card text-white bg-primary mb-3">
                    <div class="card-header text-center"><i class="fas fa-envelope"></i> Kontaktformular</div>
                    <div class="card-body">
                        <?php
                        if ($_SERVER["REQUEST_METHOD"] == "POST") {
                            if ($_POST['captcha'] != $_POST['hidden_captcha']) {
                                echo '<div class="alert alert-danger">Das eingegebene Captcha ist falsch.</div>';
                            } else {
                                $name = $_POST['name'];
                                $email = $_POST['email'];
                                if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
                                  echo '<div class="alert alert-danger">Ungültige E-Mail-Adresse eingeben.</div>';
                                } else {
                                  $subject = $_POST['subject'];
                                  $message = $_POST['message'];
                                  $message .= "<br/><br/>---<br/>";
                                  $message .= "Sendedatum: " . date('Y-m-d') . "<br/>";
                                  $message .= "Uhrzeit: " . date('H:i:s') . "<br/>";
                                  $message .= "IP-Adresse: " . $_SERVER['REMOTE_ADDR'];
                                  $to = 'youremail@example.com';
                                  $headers = "From: $name <$email>\r\n";
                                  $headers .= "Content-type: text/html; charset=UTF-8\r\n";

                                  if (mail($to, $subject, $message, $headers)) {
                                      echo '<div class="alert alert-success">Danke für Ihre Nachricht!</div>';
                                  } else {
                                      echo '<div class="alert alert-danger">Fehler beim Senden der Nachricht.</div>';
                                  }
                                }
                            }
                        }

                        $captcha = rand(1000, 9999);
                        ?>
                        <form action="" method="post">
                            <div class="form-group">
                                <label for="name"><i class="fas fa-user"></i> Name</label>
                                <input type="text" class="form-control" id="name" name="name" required>
                            </div>
                            <div class="form-group">
                                <label for="email"><i class="fas fa-envelope"></i> Email</label>
                                <input type="email" class="form-control" id="email" name="email" required>
                            </div>
                            <div class="form-group">
                                <label for="subject"><i class="fas fa-marker"></i> Betreff</label>
                                <input type="text" class="form-control" id="subject" name="subject" required>
                            </div>
                            <div class="form-group">
                                <label for="message"><i class="fas fa-comment"></i> Nachricht</label>
                                <textarea class="form-control" id="message" name="message" required></textarea>
                            </div>
                            <div class="form-group">
                                <label for="captcha"><i class="fas fa-shield-alt"></i> Captcha: <?php echo $captcha; ?></label>
                                <input type="hidden" name="hidden_captcha" value="<?php echo $captcha; ?>">
                                <input type="text" class="form-control" id="captcha" name="captcha" required>
                            </div>
                            <button type="submit" class="btn btn-light"><i class="fas fa-paper-plane"></i> Senden</button>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>