Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z formularzem
Forum PHP.pl > Forum > PHP
blacki
Witam!
Przekształciłem istniejący już formularz, ale gdzieś popełniłem błąd i teraz nie wyświetla się w ogóle tabelka, ktoś mógłbym pomóc mi w rozwiązaniu problemu?

  1. <?php
  2. // sprawdzamy, czy zmienna $submit jest pusta
  3. if (empty($_POST['submit'])) {
  4. // wyświetlamy formularz
  5. echo "<table border=\"0\"><form method=\"post\">
  6. <tr>
  7.  
  8. <td>Nazwa firmy:</td>
  9. <td><textarea name=\"nazwa\" style=\"width: 250px;\"></textarea></td>
  10. </tr>
  11.  
  12. <td>Adres firmy:</td>
  13. <td><textarea name=\"adres\" style=\"width: 250px; height: 100px\"></textarea></td>
  14. </tr>
  15.  
  16. <tr>
  17. <td>Osoba do kontaktów*:</td>
  18. <td><input type=\"text\" name=\"imie\" style=\"width: 250px\"></td>
  19. </tr>
  20.  
  21. <tr>
  22. <td>Telefon:</td>
  23. <td><input type=\"text\" name=\"telefon\" style=\"width: 250px\"></td>
  24. </tr>
  25.  
  26.  
  27. <tr>
  28. <td>Adres e-mail*:</td>
  29. <td><input type=\"text\" name=\"email\" style=\"width: 250px\"></td>
  30. </tr>
  31.  
  32. <tr>
  33. <td>Forma działalności gospodarczej:</td>
  34. <td><input type=\"text\" name=\"forma\" style=\"width: 250px\"></td>
  35. </tr>
  36.  
  37. <tr>
  38. <td>Rodzaj działalności:</td>
  39. <td><input type=\"text\" name=\"rodzaj\" style=\"width: 250px\"></td>
  40. </tr>
  41.  
  42. <tr>
  43. <td>Rodzaj księgowości:</td>
  44. <td><input type=\"text\" name=\"ksieg\" style=\"width: 250px\"></td>
  45. </tr>
  46.  
  47. <tr>
  48. <td>Rozliczenia zagraniczne:</td>
  49. <td><input type=\"text\" name=\"tn\" style=\"width: 250px\"></td>
  50. </tr>
  51.  
  52. <tr>
  53. <td>Liczba zatrudnionych pracowników:</td>
  54. <td><input type=\"text\" name=\"pracownicy\" style=\"width: 250px\"></td>
  55. </tr>
  56.  
  57. <tr>
  58. <td>Miesięczna liczba umów zlecenia/o dzieło:</td>
  59. <td><input type=\"text\" name=\"umowy\" style=\"width: 250px\"></td>
  60. </tr>
  61.  
  62. <tr>
  63. <td>Przybliżona ilość dokumentów do księgowania:</td>
  64. <td><input type=\"text\" name=\"ilosc\" style=\"width: 250px\"></td>
  65. </tr>
  66.  
  67. <tr>
  68. <td>Uwagi:</td>
  69. <td><input type=\"text\" name=\"uwagi\" style=\"width: 250px height: 100px\"></td>
  70. </tr>
  71.  
  72. <tr>
  73. <td>&nbsp;</td>
  74. <td><input type=\"submit\" name=\"submit\" value=\"Wyślij\">&nbsp;
  75. <input type=\"reset\" value=\"Od nowa\"></td></form>
  76. </tr>
  77. </table>";
  78. }
  79. // sprawdzamy, czy zmienne przesłane z formularza nie są puste
  80. elseif (!empty($_POST['nazwa']) && !empty($_POST['imie']) && !empty($_POST['email']))&& !empty($_POST['adres'])) && !empty($_POST['telefon']))
  81. && !empty($_POST['forma'])) && !empty($_POST['rodzaj'])) && !empty($_POST['ksieg'])) && !empty($_POST['tn'])) && !empty($_POST['pracownicy'])) && !empty($_POST['umowy']))
  82. && !empty($_POST['ilosc'])) && !empty($_POST['uwagi'])){
  83. // jeżeli powyższy warunek jest spełniony tworzona jest wiadomość
  84. // zmienna $message zawiera treść wiadomości
  85. $message = "Treść wiadomości:\n$_POST[tresc]\nWysłał: $_POST[imie]\ne-mail: $_POST[email]";
  86. // zmienna $header zawiera przede wszystkim adres zwrotny
  87. $header = "From: $_POST[imie] <$_POST[email]>";
  88. // funkcja mail() za pomocą której wiadomość zostanie wysłana
  89. @mail("biuroog@biuro-podatkowe.nysa.pl","Wiadomosc ze strony WWW","$message","$header")
  90. or die('Nie udało się wysłać wiadomości');
  91. // wyświetlenie komunikatu w przypadku powodzenia
  92. echo "<div align=\"center\"><strong>Wiadomość została wysłana poprawnie!</strong></div>";
  93. }
  94. // lub w przypadku nie wypełnienia formularza do końca
  95. else echo "<span style=\"color: #FF0000; text-align: center;\">Wypełnij wszystkie pola formularza!</span>";
  96.  
  97. ?>
muk4
  1. <form method=\"post\">

a gdzie action="" ?


Pod koniec coś namieszałeś z tym </tr>:
  1. </form>
  2. </tr>
blacki
action="" w tym przypadku chyba nie było potrzebne, bo po poprawieniu tabeli wszystko działa... Natomiast mam jeszcze jeden problem wiadomość na maila przychodzi bez polskich znaków, zmieniłem w programie notepad++ na charset=iso-8859-2 ale to nic nie dało, gdzie w kodzie mam to wstawić?

  1. <?php
  2. // sprawdzamy, czy zmienna $submit jest pusta
  3. if (empty($_POST['submit'])) {
  4. // wyœwietlamy formularz
  5. echo "<table border=\"0\"><form method=\"post\">
  6.  
  7. <tr>
  8. <td>Nazwa firmy:</td>
  9. <td><input type=\"text\" name=\"imie\" style=\"width: 250px\"></td>
  10. </tr>
  11.  
  12. <tr>
  13. <td>Adres:</td>
  14. <td><textarea name=\"tresc\" style=\"width: 250px; height: 100px\"></textarea></td>
  15. </tr>
  16.  
  17. <tr>
  18. <td>Osoba do kontaktów*:</td>
  19. <td><input type=\"text\" name=\"osoba\" style=\"width: 250px\"></td>
  20. </tr>
  21.  
  22. <tr>
  23. <td>Telefon:</td>
  24. <td><input type=\"text\" name=\"telefon\" style=\"width: 250px\"></td>
  25. </tr>
  26.  
  27.  
  28. <tr>
  29. <td>Adres e-mail*:</td>
  30. <td><input type=\"text\" name=\"email\" style=\"width: 250px\"></td>
  31. </tr>
  32.  
  33. <tr>
  34. <td>Forma działalności gospodarczej:</td>
  35. <td><input type=\"text\" name=\"forma\" style=\"width: 250px\"></td>
  36. </tr>
  37.  
  38. <tr>
  39. <td>Rodzaj działalności:</td>
  40. <td><input type=\"text\" name=\"rodzaj\" style=\"width: 250px\"></td>
  41. </tr>
  42.  
  43. <tr>
  44. <td>Rodzaj księgowości:</td>
  45. <td><input type=\"text\" name=\"ksieg\" style=\"width: 250px\"></td>
  46. </tr>
  47.  
  48. <tr>
  49. <td>Rozliczenia zagraniczne:</td>
  50. <td><input type=\"text\" name=\"tn\" style=\"width: 250px\"></td>
  51. </tr>
  52.  
  53. <tr>
  54. <td>Liczba zatrudnionych pracowników:</td>
  55. <td><input type=\"text\" name=\"pracownicy\" style=\"width: 250px\"></td>
  56. </tr>
  57.  
  58. <tr>
  59. <td>Miesięczna liczba umów zlecenia/o dzieło:</td>
  60. <td><input type=\"text\" name=\"umowy\" style=\"width: 250px\"></td>
  61. </tr>
  62.  
  63. <tr>
  64. <td>Przybliżona ilość dokumentów do księgowania:</td>
  65. <td><input type=\"text\" name=\"ilosc\" style=\"width: 250px\"></td>
  66. </tr>
  67.  
  68. <tr>
  69. <td>Uwagi:</td>
  70. <td><input type=\"text\" name=\"uwagi\" style=\"width: 250px; height: 100px\"></td>
  71. </tr>
  72.  
  73.  
  74.  
  75.  
  76.  
  77. <tr>
  78. <td>&nbsp;</td>
  79. <td><input type=\"submit\" name=\"submit\" value=\"Wyślij\">&nbsp;
  80. <input type=\"reset\" value=\"Czyść\"></td></form>
  81. </tr>
  82. </table>";
  83. }
  84. // sprawdzamy, czy zmienne przesłane z formularza nie sš puste
  85. elseif (!empty($_POST['imie']) && !empty($_POST['tresc']) && !empty($_POST['osoba']) && !empty($_POST['telefon']) && !empty($_POST['email']) && !empty($_POST['forma'])
  86. && !empty($_POST['rodzaj']) && !empty($_POST['ksieg']) && !empty($_POST['tn']) && !empty($_POST['pracownicy']) && !empty($_POST['umowy']) && !empty($_POST['ilosc'])
  87. && !empty($_POST['uwagi'])) {
  88. // jeżeli powyższy warunek jest spełniony tworzona jest wiadomoœć
  89. // zmienna $message zawiera treœć wiadomoœci
  90. $message = "
  91. Nazwa firmy:\n$_POST[imie]\n
  92. <br/>Adres: $_POST[tresc]\n
  93. <br/>Osoba do kontaktow: $_POST[osoba]
  94. <br/>Telefon: $_POST[telefon]\n
  95. <br/>E-mail: $_POST[email]\n
  96. <br/>Forma dzialalnosci: $_POST[forma]\n
  97. <br/>Rodzaj dzialalnosci: $_POST[rodzaj]\n
  98. <br/>Rodzaj ksiegowosci: $_POST[ksieg]\n
  99. <br/>Rozliczenia zagraniczne: $_POST[tn]\n
  100. <br/>Liczba zatrudnionych pracownikow: $_POST[pracownicy]\n
  101. <br/>Miesieczna liczba umow zlecenia i o dzielo: $_POST[umowy]\n
  102. <br/>Przyblizona ilosc dokumentow do ksiegowania: $_POST[ilosc]\n
  103. <br/>Uwagi: $_POST[uwagi]\n ";
  104. // zmienna $header zawiera przede wszystkim adres zwrotny
  105. $header = "From: $_POST[imie] <$_POST[email]>";
  106. // funkcja mail() za pomocš której wiadomoœć zostanie wysłana
  107. @mail("biuroOG@biuro-podatkowe.nysa.pl","Wiadomość ze strony WWW","$message","$header")
  108. or die('Nie udało się wysłać wiadomoœci');
  109. // wyœwietlenie komunikatu w przypadku powodzenia
  110. echo "<div align=\"center\"><strong>Wiadomość została wysłana poprawnie!</strong></div>";
  111. }
  112. // lub w przypadku nie wypełnienia formularza do końca
  113. else echo "<span style=\"color: #FF0000; text-align: center;\">Wypełnij wszystkie pola formularza!</span>";
  114.  
  115. ?>
muk4
Użyj forumowej wyszukiwarki.
blacki
Przeglądnąłem, ale nie ma nic pasującego do mojego kodu - lub inaczej - ja nie potrafię dostosować tego co jest w innych tematach do mojego kodu.
melkorm
Cytat
Przekształciłem istniejący już formularz, ale gdzieś popełniłem błąd i teraz się nie wyświetla, ktoś mógłbym pomóc mi w rozwiązaniu problemu?


Jak poprawnie zadać pytanie, przyklejony temat - zastosuj się i wróć do tematu bo moderator i tak pewnie zamknie temat jeżeli nic się nie zmieni.
muk4
Wyszukiwarka

Musisz dodać informacje o kodowaniu w nagłówku wiadomości którą wysyłasz przez funkcję mail()
blacki
Wstawiłem wg poleceń z innych tematów, teraz wygląda tak:
  1. $header = "From: $_POST[imie] <$_POST[email]> Content-Type: text/html; charset=iso-8859-2n";
  2.  
  3. @mail("biuroOG@biuro-podatkowe.nysa.pl","Wiadomosc ze strony WWW","$message","$header")


Nadal dostaje wiadomości bez polskich znaków.
AndyPSV
nie.

  1. <?php
  2.  
  3. function sendMail($from,$to,$topic,$content) {
  4. $headers = 'MIME-Version:1.0'."\r\n".'content-type:text/html;charset=utf-8'."\r\n".'From: "'.strtolower(PG_T).'" <'.NOREPLY.'@'.strtolower(PG_T).'>'."\r\n";
  5. if(mail($to,$topic,$content,$headers)) return true; else return false;
  6. }
  7.  
  8. ?>
blacki
Problem nadal nierozwiązany - wstawiłem kod i wysyła nadal bez polskich znaków. Pojawił się kolejny problem w wiadomości adresat jest nieprawidłowy.

  1. <?php
  2.  
  3. // sprawdzamy, czy zmienna $submit jest pusta
  4. if (empty($_POST['submit'])) {
  5. // wyœwietlamy formularz
  6.  
  7. echo "<table border=\"0\"><form method=\"post\">
  8.  
  9. <tr>
  10. <td>Nazwa firmy:</td>
  11. <td><input type=\"text\" name=\"imie\" style=\"width: 250px\"></td>
  12. </tr>
  13.  
  14. <tr>
  15. <td>Adres:</td>
  16. <td><textarea name=\"tresc\" style=\"width: 250px; height: 100px\"></textarea></td>
  17. </tr>
  18.  
  19. <tr>
  20. <td>Osoba do kontaktów*:</td>
  21. <td><input type=\"text\" name=\"osoba\" style=\"width: 250px\"></td>
  22. </tr>
  23.  
  24. <tr>
  25. <td>Telefon:</td>
  26. <td><input type=\"text\" name=\"telefon\" style=\"width: 250px\"></td>
  27. </tr>
  28.  
  29.  
  30. <tr>
  31. <td>Adres e-mail*:</td>
  32. <td><input type=\"text\" name=\"email\" style=\"width: 250px\"></td>
  33. </tr>
  34.  
  35. <tr>
  36. <td>Forma działalności gospodarczej:</td>
  37. <td><input type=\"text\" name=\"forma\" style=\"width: 250px\"></td>
  38. </tr>
  39.  
  40. <tr>
  41. <td>Rodzaj działalności:</td>
  42. <td><input type=\"text\" name=\"rodzaj\" style=\"width: 250px\"></td>
  43. </tr>
  44.  
  45. <tr>
  46. <td>Rodzaj księgowości:</td>
  47. <td><input type=\"text\" name=\"ksieg\" style=\"width: 250px\"></td>
  48. </tr>
  49.  
  50. <tr>
  51. <td>Rozliczenia zagraniczne:</td>
  52. <td><input type=\"text\" name=\"tn\" style=\"width: 250px\"></td>
  53. </tr>
  54.  
  55. <tr>
  56. <td>Liczba zatrudnionych pracowników:</td>
  57. <td><input type=\"text\" name=\"pracownicy\" style=\"width: 250px\"></td>
  58. </tr>
  59.  
  60. <tr>
  61. <td>Miesięczna liczba umów zlecenia/o dzieło:</td>
  62. <td><input type=\"text\" name=\"umowy\" style=\"width: 250px\"></td>
  63. </tr>
  64.  
  65. <tr>
  66. <td>Przybliżona ilość dokumentów do księgowania:</td>
  67. <td><input type=\"text\" name=\"ilosc\" style=\"width: 250px\"></td>
  68. </tr>
  69.  
  70. <tr>
  71. <td>Uwagi:</td>
  72. <td><textarea name=\"uwagi\" style=\"width: 250px; height: 100px\"></textarea></td>
  73. </tr>
  74.  
  75.  
  76.  
  77.  
  78.  
  79. <tr>
  80. <td>&nbsp;</td>
  81. <td><input type=\"submit\" name=\"submit\" value=\"Wyślij\">&nbsp;
  82. <input type=\"reset\" value=\"Czyść\"></td></form>
  83. </tr>
  84. </table>";
  85. }
  86. // sprawdzamy, czy zmienne przesłane z formularza nie sš puste
  87. elseif (!empty($_POST['imie']) && !empty($_POST['tresc']) && !empty($_POST['osoba']) && !empty($_POST['telefon']) && !empty($_POST['email']) && !empty($_POST['forma'])
  88. && !empty($_POST['rodzaj']) && !empty($_POST['ksieg']) && !empty($_POST['tn']) && !empty($_POST['pracownicy']) && !empty($_POST['umowy']) && !empty($_POST['ilosc'])
  89. && !empty($_POST['uwagi'])) {
  90. // jeżeli powyższy warunek jest spełniony tworzona jest wiadomoœć
  91. // zmienna $message zawiera treœć wiadomoœci
  92. $message = "
  93. <b>Nazwa firmy: </b> $_POST[imie]
  94. <b><br/>Adres:</b> $_POST[tresc]
  95. <b><br/>Osoba do kontaktow:</b> $_POST[osoba]
  96. <b><br/>Telefon:</b> $_POST[telefon]
  97. <b><br/>E-mail:</b> $_POST[email]
  98. <b><br/>Forma dzialalnosci: </b> $_POST[forma]
  99. <b><br/>Rodzaj dzialalnosci:</b> $_POST[rodzaj]
  100. <b><br/>Rodzaj ksiegowosci:</b> $_POST[ksieg]
  101. <b><br/>Rozliczenia zagraniczne:</b> $_POST[tn]
  102. <b><br/>Liczba zatrudnionych pracownikow:</b> $_POST[pracownicy]
  103. <b><br/>Miesieczna liczba umow zlecenia i o dzielo:</b> $_POST[umowy]
  104. <b><br/>Przyblizona ilosc dokumentow do ksiegowania:</b> $_POST[ilosc]
  105. <b><br/>Uwagi:</b> $_POST[uwagi] ";
  106. // zmienna $header zawiera przede wszystkim adres zwrotny
  107. function sendMail($from,$to,$topic,$content) {
  108. $header = 'MIME-Version:1.0'."\r\n".'content-type:text/html;charset=utf-8'."\r\n".'From: $_POST[imie] "'.strtolower(PG_T).'" <'.NOREPLY.'@'.strtolower(PG_T).'>'."\r\n";
  109. if(mail($to,$topic,$content,$header)) return true; else return false;
  110. }
  111. // funkcja mail() za pomocš której wiadomoœć zostanie wysłana
  112. @mail("biuroOG@biuro-podatkowe.nysa.pl","Wiadomość ze strony WWW","$message","$header")
  113. or die('Nie udało się wysłać wiadomoœci');
  114. // wyœwietlenie komunikatu w przypadku powodzenia
  115. echo "<div align=\"center\"><strong>Wiadomość została wysłana poprawnie!</strong></div>";
  116. }
  117. // lub w przypadku nie wypełnienia formularza do końca
  118. else echo "<span style=\"color: #FF0000; text-align: center;\">Wypełnij wszystkie pola formularza!</span>";
  119.  
  120. ?>
melkorm
Użyj do tego gotowej już klasy, jak np. PHPMailer'a i będziesz miał problem z głowy.
blacki
Kompletnie nie znam php, skorzystałem z gotowego szablonu, który przerobiłem na swoje potrzeby. Nie potrafię zrobić php mailera, dlatego chciałem, aby ktoś pomógł ten formularz który już mam 'naprawić'.
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.