Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][MySQL][PHP]Wysyłka formularza @ tylko na adres serwera
Forum PHP.pl > Forum > Przedszkole
0110110101101011
Witam,

Posiadam kod formularza kontaktowego e-mail.

  1.  
  2. ?<!DOCTYPE html>
  3. <html lang="pl">
  4.  
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  7. <META HTTP-EQUIV="CONTENT-LANGUAGE" CONTENT="PL">
  8. <!-- Main CSS Stylesheet -->
  9. <link rel="stylesheet" type="text/css" href="css/style.css">
  10.  
  11. <!-- Google Web Fonts -->
  12. <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Poppins:400,300,500,600,700">
  13.  
  14. </head>
  15. <body>
  16.  
  17. <?php
  18.  
  19. $twojemail = "twój@mail.pl"; //na jaki adres ma zostać wysłana treść z formularza
  20. $blad=0;
  21.  
  22. if (isset($_POST['submit'])) {
  23.  
  24. // filtrowanie treści wprowadzonych przez użytkownika
  25. $temat = "Formularz kontaktowy"; // temat wiadomości
  26. $name = htmlspecialchars(stripslashes(strip_tags(trim($_POST["name"]))), ENT_QUOTES);
  27. $email = htmlspecialchars(stripslashes(strip_tags(trim($_POST["email"]))), ENT_QUOTES);
  28. $message = htmlspecialchars(stripslashes(strip_tags(trim($_POST["message"]))), ENT_QUOTES);
  29. $subject = htmlspecialchars(stripslashes(strip_tags(trim($_POST["subject"]))), ENT_QUOTES);
  30. $tel = htmlspecialchars(stripslashes(strip_tags(trim($_POST["tel"]))), ENT_QUOTES);
  31.  
  32. // sprawdzamy czy wszystkie pola zostały wypełnione
  33. if (!$name) {
  34. $blad++;
  35. echo '<p class="blad">Proszę wpisać swoje imię.</p>';
  36. }
  37. if (!$email) {
  38. $blad++;
  39. echo '<p class="blad">Proszę wpisać swój adres e-mail.</p>';
  40. }
  41. if (!$message) {
  42. $blad++;
  43. echo '<p class="blad">Proszę wpisać treść wiadomości.</p>';
  44. }
  45.  
  46. // jeżeli nie ma błędu, to wiadomość e-mail zostaje wysłana
  47. if ($blad == 0) {
  48.  
  49. // niezbędne nagłówki do wyświetlania wiadomości HTML
  50. $naglowki = "MIME-Version: 1.0" . "\r\n";
  51. $naglowki .= "Content-type:text/html;charset=utf-8" . "\r\n";
  52.  
  53. // opcjonalne nagłówki
  54. $naglowki .= 'From: <'.$email.'>' . "\r\n";
  55. $naglowki .= 'Cc: <'.$twojemail.'>' . "\r\n";
  56.  
  57. // całkowita treść wiadomości
  58. $message = nl2br($message);
  59. $wiadomosc = <<< KONIEC
  60.   <html>
  61.   <p><strong>Imię i nazwisko:</strong> $name</p>
  62. <p><strong>Telefon:</strong><br /> $tel</p>
  63. <p><strong>E-mail:</strong> $email</p>
  64. <p><strong>Wybrany temat:</strong><br /> $subject</p>
  65. <p><strong>Wiadomość:</strong><br /> $message</p>
  66.   </html>
  67. KONIEC;
  68. // wysyłanie wiadomości e-mail
  69. $wynik = mail('<'.$twojemail.'>', $temat, $wiadomosc, $naglowki);
  70.  
  71. // komunikat potwierdzający wysłanie wiadomości bądź nie
  72. if ($wynik) {
  73. echo '
  74.  
  75. <div class="section-title">
  76. <p></p>
  77. <p></p>
  78. <h2>Dziękujemy</h2>
  79. <p><Strong>Wiadomość została wysłana</strong></p>
  80. <p>Za chwilę nastąpi przekierowanie na stronę startową.</p>
  81. </div>';
  82. } else {
  83. echo '
  84. <div class="section-title">
  85. <h2>blad</h2>
  86. </div>';
  87. }
  88. }
  89.  
  90. }
  91. ?>
  92.  
  93. <meta http-equiv="refresh" content="10; url=d/index.html" />?
  94. </body>
  95. </html>


Umieściłem go sobie do testów na pierwszym lepszym serwerze darmowym cba.pl, gdzie posiadam zarejestrowaną domenę e-mail. Formularz działa, wysyła maile tylko i wyłącznie gdy w 19 linijce PHP podam adres mail jaki mam zarejestrowany na cda.pl oraz gdy w samym formularzu na stronie index.html, w miejscu na e-mail, podam ten sam e-mail z portalu cda.pl, jeśli tu lub tu podam jakikolwiek inny e-mail, formularz niczego nie wysyła. Serdecznie proszę o pomoc, jak to rozwiązać, by formularz wysyłał maile na inne adresy.

  1. <div class="row">
  2. <form method="post" name="contactform" action="mail.php">
  3.  
  4. <div class="col-sm-6">
  5. <div class="form-group">
  6. <input type="text" name="name" id="name" class="form-control" placeholder=>
  7. </div>
  8. </div>
  9.  
  10. <div class="col-sm-6">
  11. <div class="form-group">
  12. <input type="text" name="email" id="email" class="form-control" placeholder="* Adres e-mail">
  13. </div>
  14. </div>
  15.  
  16. <div class="col-sm-6">
  17. <select id="subject" name="subject" class="form-group form-control">
  18. <option value="" selected disabled>Wybierz temat</option>
  19. <option>Wycena przewozu</option>
  20. <option>Oferta</option>
  21. <option>Inny temat</option>
  22. </select>
  23. </div>
  24.  
  25. <div class="col-sm-6">
  26. <div class="form-group">
  27. <input type="text" name="tel" id="tel" class="form-control" placeholder="* Numer telefonu">
  28. </div>
  29. </div>
  30.  
  31. <div class="col-sm-12">
  32. <div class="textarea-message form-group">
  33. <textarea name="message" id="message" class="textarea-message form-control" placeholder= rows="5"></textarea>
  34. </div>
  35. </div>
  36. <div>
  37. <p><small></small></p>
  38. </div>
  39. <div class="text-center">
  40. <button type="submit" name="submit" value="Send message" class="button button-style button-style-dark button-style-icon fa fa-long-arrow-right text-center"></button>
  41. </div>
  42.  
  43. </form>
  44.  
  45. </div>
leonpro778
Skoro masz tak:
  1. $twojemail = "twój@mail.pl"; //na jaki adres ma zostać wysłana treść z formularza


A przy wysyłce masz tak:
  1. $wynik = mail('<'.$twojemail.'>', $temat, $wiadomosc, $naglowki);


To się nie dziw, że wysyła Ci "tylko" na ten email. Zmień linijkę z wysyłką na:

  1. $wynik = mail($email, $temat, $wiadomosc, $naglowki);


To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.