Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Formularz i mały problem, problem z formularzem php
fcppl
post
Post #1





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 11.04.2010

Ostrzeżenie: (0%)
-----


Witam,

Mam taki formularz kontaktowy, skrypt mam z internetu lekko go przerobiłem i wszystko mi działa OK. Teraz chciałem dorobic zeby tylko pierwsze trzy pola byly obowiazkowe, a pole "Informacje dodatkowe" dowolne. W tej chwili działa formularz jedynie jak wypelnie wszystkie cztery pola. Sam kombinuje juz 2 dzien, ale nie daje sobie rady. Dodam ze moja znajomosc php jest bardzo ograniczona.

Prosze o pomoc

  1. <?php
  2. if ((empty($_POST['kurs']) or empty($_POST['termin']) or empty($_POST['email']) or empty($_POST['uwaga'])) and !empty($_POST['submit'])) {
  3. // wyświetlamy formularz
  4. echo "<table border='0'><form method='post'>
  5. <tr>
  6. <td><input type='text' name='kurs' class='mass' value='".$_POST['kurs']."'></td>
  7. </tr>
  8. <tr>
  9. <td><input type='text' name='termin' class='mass' value='".$_POST['termin']."'></td>
  10. </tr>
  11. <tr>
  12. <td><input type='text' name='email' class='mass' value='".$_POST['email']."'></td>
  13. </tr>
  14. <tr>
  15. <td><input type='text' name='uwaga' class='mass' value='".$_POST['uwaga']."'></td>
  16. </tr>
  17. </table>
  18. <table border='0'>
  19. <tr>
  20. <td>
  21. <p><input type='submit' name='submit' value='.' class='input1'></p>
  22. </td>
  23. </tr>
  24. </table>
  25. <tr>
  26. <td><span style='color:#fff; font-size:13px; margin:0 0 0 4px;'>Wypełnij wszystkie pola formularza!</span></td>
  27. <td>";
  28. // lub w przypadku nie wypełnienia formularza do końca
  29. echo "
  30. </td>
  31. </tr>
  32. </table>";
  33. }
  34. elseif (empty($_POST['kurs']) or empty($_POST['termin']) or empty($_POST['email']) or empty($_POST['uwaga']) and empty($_POST['submit'])) {
  35. // wyświetlamy formularz
  36. echo "<form action='index.php' method='post'>
  37.  
  38. <p><input type='text' name='kurs' class='mass' value='Wpisz imię i nazwisko'></input></p>
  39.  
  40. <p><input type='text' name='termin' class='mass' value='Wpisz adres e-mail'></input></p>
  41.  
  42. <p><input type='text' name='email' class='mass' value='Wpisz numer telefonu'></input></p>
  43.  
  44. <p><input type='text' name='uwaga' class='mass' value='Informacje dodatkowe'></input></p>
  45.  
  46. <table border='0'>
  47. <tr>
  48. <td>
  49. <p><input type='submit' name='submit' value='.' class='input1'></input></p>
  50. </td>
  51. </tr>
  52. </table></form>";
  53. }
  54.  
  55. // sprawdzamy, czy zmienne przesłane z formularza nie są puste
  56. elseif (!empty($_POST['kurs']) && !empty($_POST['termin']) && !empty($_POST['email'])) {
  57. // jeżeli powyższy warunek jest spełniony tworzona jest wiadomość
  58. // zmienna $message zawiera treść wiadomości
  59. $message = "Imię i nazwisko: $_POST[kurs]
  60. <br>e-mail: $_POST[termin]
  61. <br>Numer telefonu: $_POST[email]
  62. <br>Informacje dodatkowe: $_POST[uwaga]
  63. ";
  64. // zmienna $header zawiera przede wszystkim adres zwrotny
  65. $header = "From: $_POST[kurs] <$_POST[email]> $from
  66. Reply-to: $from
  67. MIME-Version: 1.0
  68. Content-type: text/html; charset=UTF-8";
  69. // funkcja mail() za pomocą której wiadomość zostanie wysłana
  70. @mail("xxx","Wiadomosc ze strony F4B","$message","$header")
  71. or die('Nie udało się wysłać wiadomości');
  72. // wyświetlenie komunikatu w przypadku powodzenia
  73. echo "<div <span style='color:#fff; font-size:13px; margin:35px 0 0 3px;'>Wiadomość została wysłana poprawnie!</div>";
  74. }
  75. ?>


Pozdrawiam

Ten post edytował fcppl 17.01.2012, 19:07:11
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
untorched
post
Post #2





Grupa: Zarejestrowani
Postów: 318
Pomógł: 76
Dołączył: 27.12.2011
Skąd: Dąbrowa Górnicza

Ostrzeżenie: (0%)
-----


2 linijka ma wyglądać tak:
  1. if ((empty($_POST['kurs']) or empty($_POST['termin']) or empty($_POST['email'])) and !empty($_POST['submit'])) {
34 linijka ma wyglądać tak:
  1. elseif ((empty($_POST['kurs']) or empty($_POST['termin']) or empty($_POST['email'])) and empty($_POST['submit'])) {


(IMG:style_emoticons/default/wacko.gif)

Ten post edytował untorched 17.01.2012, 19:13:27
Go to the top of the page
+Quote Post
fcppl
post
Post #3





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 11.04.2010

Ostrzeżenie: (0%)
-----


dzieki za pomoc dziala,

ale dopiero teraz widze ze napisałes

"34 linijka ma wyglądać tak:" mi działa to poprawnie jak zrobiłem zmiany tylko w 2 linijce jak pisałes na samym poczatku.

Witam,

Mam jeszcze jedno pytanie. Jak dorobic w tym formularzu zeby po wypełnieniu i przeslaniu zapytania. Nadawca otrzymywał automatycznie informacje na swojego meila.

np" Dziekujemy za przesłanie pytanie. Cos tam cos tam"

Dziekuje z gory za pomoc.
Go to the top of the page
+Quote Post
Kulfon
post
Post #4





Grupa: Zarejestrowani
Postów: 45
Pomógł: 2
Dołączył: 24.12.2010

Ostrzeżenie: (0%)
-----


Jak już będzie po proteście przeciwko SOPA to wejdz na php.net i poczytaj o funkcji mail() (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
untorched
post
Post #5





Grupa: Zarejestrowani
Postów: 318
Pomógł: 76
Dołączył: 27.12.2011
Skąd: Dąbrowa Górnicza

Ostrzeżenie: (0%)
-----


@up, manual przecież działa LINK o_O
Go to the top of the page
+Quote Post
Kulfon
post
Post #6





Grupa: Zarejestrowani
Postów: 45
Pomógł: 2
Dołączył: 24.12.2010

Ostrzeżenie: (0%)
-----


Aj racja... Polska wersja...
zakładkę mam zrobioną na php.net - a tamta wersja nie działa.
Go to the top of the page
+Quote Post
fcppl
post
Post #7





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 11.04.2010

Ostrzeżenie: (0%)
-----


witam,

Poczytałem troche pomieszałem i wszystko działa mi juz w 90% OK. Mam tylko problem jak wysłać meila do osoby wypelniajacej formularz o np: tresci "Dziekujemy cos tam cos tam", a wypelniany formularz do administratora strony.

Bo na ta chwile dwa takie same meile dostaje wypelniajacy i administrator i nie potrafie tego oddzielic.

Oto zmodyfikowany kod

  1. <?php
  2. if ((empty($_POST['kurs']) or empty($_POST['termin']) or empty($_POST['email'])) and !empty($_POST['submit'])) {
  3. // wyświetlamy formularz
  4. echo "<form action='index.php' method='post'>
  5.  
  6. <p><input type='text' name='kurs' class='mass' value='".$_POST['kurs']."'></input></p>
  7.  
  8.  
  9. <p><input type='text' name='termin' class='mass' value='".$_POST['termin']."'></input></p>
  10.  
  11.  
  12. <p><input type='text' name='email' class='mass' value='".$_POST['email']."'></input></p>
  13.  
  14. <p><input type='text' name='uwaga' class='mass' value='".$_POST['uwaga']."'></input></p>
  15.  
  16. <table border='0'>
  17. <tr>
  18. <td>
  19. <p><input type='submit' name='submit' value='.' class='input1'></p>
  20. <p><span style='color:#fff; font-size:13px; margin:0 0 0 4px;'>Wypełnij wszystkie pola formularza!</span>
  21. </td>
  22. </tr>
  23. ";
  24. // lub w przypadku nie wypełnienia formularza do końca
  25. echo "
  26. </td>
  27. </tr>
  28. </table></form>";
  29. }
  30. elseif (empty($_POST['kurs']) or empty($_POST['termin']) or empty($_POST['email']) or empty($_POST['uwaga']) and empty($_POST['submit'])) {
  31. // wyświetlamy formularz
  32. echo "<form action='index.php' method='post'>
  33.  
  34. <p><input type='text' name='kurs' class='mass' value='Wpisz imię i nazwisko *' onfocus=\"if (this.value=='Wpisz imię i nazwisko *') { this.value=''; }\"onblur=\"if (this.value=='') { this.value=''; }\" /></p>
  35.  
  36. <p><input type='text' name='termin' class='mass' value='Wpisz adres e-mail *' onfocus=\"if (this.value=='Wpisz adres e-mail *') { this.value=''; }\"onblur=\"if (this.value=='') { this.value=''; }\" /></p>
  37.  
  38. <p><input type='text' name='email' class='mass' value='Wpisz numer telefonu *' onfocus=\"if (this.value=='Wpisz numer telefonu *') { this.value=''; }\"onblur=\"if (this.value=='') { this.value=''; }\" /></p>
  39.  
  40. <p><input type='text' name='uwaga' class='mass' value='Informacje dodatkowe' onfocus=\"if (this.value=='Informacje dodatkowe') { this.value=''; }\"onblur=\"if (this.value=='') { this.value=''; }\" /></p>
  41.  
  42. <table border='0'>
  43. <tr>
  44. <td>
  45. <p><input type='submit' name='submit' value='.' class='input1'></input></p>
  46. </td>
  47. </tr>
  48. </table></form>";
  49. }
  50.  
  51. // sprawdzamy, czy zmienne przesłane z formularza nie są puste
  52. elseif (!empty($_POST['kurs']) && !empty($_POST['termin']) && !empty($_POST['email'])) {
  53. // jeżeli powyższy warunek jest spełniony tworzona jest wiadomość
  54. // zmienna $message zawiera treść wiadomości
  55. $message = "
  56.  
  57. Witaj <b>$_POST[kurs]</b>,<br>
  58. przyjęliśmy Twoje zgłoszenie. W najbliższym czasie skontaktujemy się z Tobą.<p>
  59.  
  60. ----------<p>
  61.  
  62. <b>Imię i nazwisko:</b> $_POST[kurs]
  63. <p><b>e-mail:</b> $_POST[termin]
  64. <p><b>Numer telefonu:</b> $_POST[email]
  65. <p><b>Informacje dodatkowe:</b> $_POST[uwaga]
  66. ";
  67. // zmienna $header zawiera przede wszystkim adres zwrotny
  68. $header = "From: xxx <$_POST[email]> $from
  69. Reply-to: $from
  70. Bcc: $_POST[termin]
  71. MIME-Version: 1.0
  72. Content-type: text/html; charset=UTF-8";
  73.  
  74.  
  75. // funkcja mail() za pomocą której wiadomość zostanie wysłana
  76. @mail("xxx","Wiadomosc ze strony xxx","$message","$header")
  77. or die('Nie udało się wysłać wiadomości');
  78. // wyświetlenie komunikatu w przypadku powodzenia
  79. echo "<div <span style='color:#fff; font-size:13px; margin:35px 0 0 3px;'>Wiadomość została wysłana poprawnie!</div>";
  80. }
  81. ?>


Pozdrawiam i proszę o jakas wakazowke

Czy moze mi ktos pomoc?

Ten post edytował fcppl 18.01.2012, 23:30:21
Go to the top of the page
+Quote Post
untorched
post
Post #8





Grupa: Zarejestrowani
Postów: 318
Pomógł: 76
Dołączył: 27.12.2011
Skąd: Dąbrowa Górnicza

Ostrzeżenie: (0%)
-----


Zmiana treści zmiennej $message na inną?
Go to the top of the page
+Quote Post
fcppl
post
Post #9





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 11.04.2010

Ostrzeżenie: (0%)
-----


(IMG:style_emoticons/default/smile.gif) sama tresc jest OK, ale teraz dla mnie problemem jest jak zrobic zeby inna tresc szla do administratora strony zakladajac ze ta pierwsza idzie do osoby ktora wypelniła formularz.

witam,

Moze mnie ktos jakos konkretniej nakierwac. Bo mecze sam i stoje w punkcie wyjscia.

Dziekuje z gory

Pozdrawiam
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 00:08