Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- header('Content-Type: text/html; charset=utf-8');
- if(isset($_POST['who'])) // sprawdzamy, czy zostały dane przekazen z formularza.
- {
- $flagAllOK = true; // Zmienna pomocnicza przy sprawdzaniu czy wszystkie dane formularza zostały uzupełnione "prawidłowo"
- $mailTo = 'xxx@gmail.com';// tutaj po "=" adres mailowy gdzie mają przychodzić wiadomości.
- // Sprawdzamy po kolei czy wszystko jest ok,
- // Czy nie są zostawione puste pola
- if((empty($_POST['who'])) || (empty($_POST['mail'])) || (empty($_POST['message'])))
- {
- $flagAllOK = false;
- $failFlag['empty'] = 'Uzupełnij wszystkie pola.'; // Zwracam informację o błędzie.
- }
- // Czy e-mail nie zawiera niedozwolonych znaków lub jest niepoprawny
- $mail=$_POST['mail'];
- $mailSafe=filter_input(INPUT_POST, 'mail', FILTER_SANITIZE_EMAIL);
- if((!filter_var($mailSafe, FILTER_VALIDATE_EMAIL)) || ($mailSafe!=$mail))
- {
- $flagAllOK = false;
- $failFlag['mail'] = 'Podany adres e-mail jest błędny. Proszę podać prawidłowy adres e-mail.';
- }
- // Czy kod recaptcha jest poprawny
- $key = ''; // Tu podajemy prywatny klucz recaptcha
- $checkReCaptcha = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret='.$key.'&response='.$_POST['g-recaptcha-response']);
- $response = json_decode($checkReCaptcha);
- if(!($response->success))
- {
- $flagAllOK = false;
- $failFlag['reCaptcha'] = 'Błędny kod reCaptcha.';
- }
- // Wysyłamy maila jeśżeli wszystko się zgadza. Tworzymy nagłówek i treść
- if($flagAllOK === true)
- {
- $header = 'Reply-To: '.$mailSafe.PHP_EOL;
- $header .= 'MIME-Version: 1.0'.PHP_EOL;
- $header .= 'Content-Type: text/html; charset=UTF-8';
- $message = '<p>Dostałeś wiadomosć od: </p>';
- $message .= '<p>Imię i nazwisko: '.$_POST['who'].'</p>';
- $message .= '<p>E-mail: '.$mailSafe.'</p>';
- $message .= '<p>Wiadomość: '.$_POST['message'].'</p>';
- $messageComplete = '<!doctype html><html lang="pl"><head><meta charset="utf-8"></head><body>'.$message.'</body></html>';
- $subject = 'Wiadomosć ze strony ...';
- // Wysyłamy maila
- if(mail($mailTo, $subject, $messageComplete, $header))
- {
- $failFlag['success'] = 'Wiadomość wysłana.';
- }
- else
- {
- $failFlag['fail'] = 'Wiadomość nie została wysłana.';
- }
- }
- }
- ?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta http-equiv="X-UA-Compatible" content="ie=edge" />
- <meta http-equiv="content-language" content="pl" />
- <meta name="author" content="Paweł Szwast" />
- <meta name="robots" content="index, follow" />
- <title>Formularz Kontaktowy - Mail PHP</title>
- <script src='https://www.google.com/recaptcha/api.js'></script>
- </head>
- <body>
- <form action="kontakt.php" method="post" class="kontakt">
- <label for="name">Imię i nazwisko:</label>
- <input type="text" name="who" id="name" value="<?php if(!empty($who) && isset($failFlag['fail'])){ echo($who);}?>" placeholder="Jan Kowalski" required autocomplete="off" />
- <label for="email">E-mail:</label>
- <input type="text" name="mail" id="email" value="<?php if(!empty($mail) && isset($failFlag['fail'])){ echo($mail);}?>" placeholder="example@example.com" required autocomplete="off" />
- <label for="message">Treść:</label>
- <textarea name="message" id="message" placeholder="Wpisz swoją wiadomość" required autocomplete="off"><?php if(!empty($tempMessage) && isset($failFlag['fail'])){ echo($tempMessage);}?></textarea>
- <div class="g-recaptcha" data-sitekey=""></div>
- <button type="submit">Wyślij</button>
- </form>
- <?php
- if(isset($failFlag['empty']))
- {
- echo $failFlag['empty'];
- }
- if(isset($failFlag['mail']))
- {
- echo $failFlag['mail'];
- }
- if(isset($failFlag['reCaptcha']))
- {
- echo $failFlag['reCaptcha'];
- }
- if(isset($failFlag['success']))
- {
- echo $failFlag['success'];
- }
- if(isset($failFlag['fail']))
- {
- echo $failFlag['fail'];
- }
- ?>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement