Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML]Formularz
Forum PHP.pl > Forum > Przedszkole
robertinog
Witam
Jestem początkujący i proszę o wyrozumiałość
Mam następujący formularz ale ona nie działa

  1.  
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>CYFRA+</title>
  6. <style type="text/css">
  7. <!--
  8. .czcionka {
  9. color: #FFF;
  10. }
  11. .czcionka {
  12. color: #FFF;
  13. }
  14. body {
  15. background-image: url(tlo.jpg);
  16. background-repeat: no-repeat;
  17. background-attachment:scroll ;
  18. background-position: center top;
  19. margin-top: 30px;
  20. margin-bottom: 140px;
  21. }
  22. -->
  23. </head>
  24.  
  25. <body bgcolor="#FFFFFF">
  26.  
  27. <p>&nbsp;</p>
  28.  
  29.  
  30.  
  31. <table width="500" border="0" align="center">
  32. <tr>
  33. <form action= "wyslij.php" method="post" >
  34.  
  35.  
  36. <th align="left" class="czcionka" scope="row"> IMIĘ:</th>
  37. <td>
  38. <input type="text" name="imie" id="imie" />
  39. </label>
  40. </form>
  41. </tr>
  42. <tr>
  43. <th align="left" class="czcionka" scope="row">NAZWISKO: </th>
  44. <td>
  45. <input type="text" name="nazwisko" id="nazwisko" />
  46. </label>
  47. </form></td>
  48. </tr>
  49. <tr>
  50. <th align="left" class="czcionka" scope="row">MIASTO:</th>
  51. <td>
  52. <input type="text" name="miasto" id="miasto" />
  53. </label>
  54. </form></td>
  55. </tr>
  56. <tr>
  57. <th align="left" class="czcionka" scope="row">Nr Telefonu:</th>
  58. <td>
  59. <input type="text" name="telefon" id="telefon" />
  60. </label>
  61. </form></td>
  62. </tr>
  63. <tr>
  64. <th align="left" class="czcionka" scope="row">e-mail:</th>
  65. <td>
  66. <input type="text" name="email" id="email" />
  67. </label>
  68. </form></td>
  69. </tr>
  70. <tr>
  71. <th align="left" class="czcionka" scope="row">WOJEWÓDZTWO:</th>
  72. <td>
  73. <select name="wojewodztwo" size="1" id="wojewodztwo">
  74. <option selected="selected">mazowieckie</option>
  75. <option>świętokrzyskie</option>
  76. <option>łódzkie</option>
  77. <option>warmińsko-mazurskie</option>
  78. <option>kujawsko-pomorskie</option>
  79. <option>lubelskie</option>
  80. <option>lubuskie</option>
  81. <option>małopolskie</option>
  82. <option>opolskie</option>
  83. <option>podkarpackie</option>
  84. <option>podlaskie</option>
  85. <option>pomorskie</option>
  86. <option>śląskie</option>
  87. <option>wielkopolskie</option>
  88. <option>zachodniopomorskie</option>
  89. </select>
  90. </label>
  91. </form></td>
  92. </tr>
  93. <tr>
  94. <th align="left" class="czcionka" scope="row">PORA KONTAKTU:</th>
  95. <td>
  96. <select name="godziny" size="1" id="godziny">
  97. <option selected="selected">8-10</option>
  98. <option>10-12</option>
  99. <option>12-14</option>
  100. <option>14-16</option>
  101. <option>16-18</option>
  102. <option>18-20</option>
  103. <option>20-22</option>
  104. </select>
  105. </label>
  106. </form></td>
  107. </tr>
  108. <tr>
  109. <th align="left" class="czcionka" scope="row">PAKIET:</th>
  110. <td>
  111. <select name="pakiet" size="1" id="pakiet">
  112. <option>START</option>
  113. <option>CANAL+ START</option>
  114. <option>KOMPAKT</option>
  115. <option>KOMPAKT HD</option>
  116. <option>CANAL+ KOMPAKT</option>
  117. <option>CANAL+ KOMPAKT HD</option>
  118. <option>OPTIMUM</option>
  119. <option>OPTIMUM HD</option>
  120. <option>CANAL+ OPTIMUM</option>
  121. <option>CANAL+ OPTIMUM HD</option>
  122. <option>SUPER PREMIUM HBO</option>
  123. <option selected="selected">PRESTIŻ HD+</option>
  124. </select>
  125. </label>
  126. </form></td>
  127. </tr>
  128. <tr>
  129. <th align="left" class="czcionka" scope="row">DEKODER:</th>
  130. <td>
  131. <select name="dekoder" id="dekoder">
  132. <option>DEKODKODER HD PVR PACE</option>
  133. <option selected="selected">DEKODER HD Sagemcom</option>
  134. <option>DEKODER SD</option>
  135. </select>
  136. </label>
  137. </form></td>
  138. </tr>
  139. <tr>
  140. <th align="left" class="czcionka" scope="row">ANTENA:</th>
  141. <td>
  142. <select name="antena" id="antena">
  143. <option>Antena 80cm</option>
  144. <option>Antena 60cm</option>
  145. </select>
  146. </label>
  147. </form></td>
  148. </tr>
  149. <tr>
  150. <th align="left" class="czcionka" scope="row">Montaż</th>
  151. <td>
  152. <select name="montaz" id="montaz">
  153. <option>TAK</option>
  154. <option>NIE</option>
  155. </select>
  156. </label>
  157. </form></td>
  158. </tr>
  159. <tr>
  160. <th height="199" align="left" valign="top" class="czcionka" scope="row">Informacje dodatkowe:</th>
  161. <td>
  162. <textarea name="uwagi" id="uwagi" cols="45" rows="5"></textarea>
  163. </form>
  164.  
  165.  
  166. <input name="" type="reset" value="Wyczyść formularz"/>
  167. <input type="submit" name="send" id="send" value="Wyślij" />
  168. </label>
  169. </form>
  170. </form>
  171. <p>&nbsp;</p>
  172. <p>&nbsp;</p></td>
  173. </tr>
  174. <p>&nbsp;</p>
  175. </body>
  176.  


  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>CYFRA+</title>
  6. </head>
  7. <body>
  8. <?php
  9. //filtruje dane użytkownika
  10. $imie = htmlspecialchars(trim($_POST['imie']));
  11. $nazwisko = htmlspecialchars(trim($_POST['nazwisko']));
  12. $miasto = htmlspecialchars(trim($_POST['miasto']));
  13. $telefon = htmlspecialchars(trim($_POST['telefon']));
  14. $email = htmlspecialchars(trim($_POST['email']));
  15. $wojewodztwo = htmlspecialchars(trim($_POST['wojewodztwo']));
  16. $godziny = htmlspecialchars(trim($_POST['godziny']));
  17. $pakiet = htmlspecialchars(trim($_POST['pakiet']));
  18. $dekoder = htmlspecialchars(trim($_POST['dekoder']));
  19. $antena htmlspecialchars(trim($_POST['antena']));
  20. $montaz = htmlspecialchars(trim($_POST['montaz']));
  21. $uwagi = htmlspecialchars(trim($_POST['uwagi']));
  22.  
  23. $send = $_POST['send'];
  24. //mail na który będa wysyłane wiadomości
  25. $odbiorca = "biuro@cyfra.info.pl";
  26. //nagłówki
  27. $header = "Content-type: text/html; charset=utf-8\r\nFrom: $email";
  28.  
  29. //Sprawdzam czy istnieje ciastko, jeżeli tak wyświetlam komunikat
  30. if (isset($_COOKIE['send'])) $error ='Odczekaj '.($_COOKIE['send']-time()).' sekund przed wysłaniem kolejnej wiadomości';
  31.  
  32. if ($send && !isset($_COOKIE['send']))
  33. {
  34. //Sprawdzam nick
  35. if (empty($imie))
  36. { $error = "Nie wypełniłeś pola <strong>Nick !</strong><br/>"; }
  37. elseif (strlen($imie) > 20)
  38. { $error .="Za długi nick - max. 20 znaków <br/>";}
  39.  
  40. //Sprawdzam mail
  41. if (empty($email))
  42. { $error .= "Nie wypełniłeś pola <strong>E-mail !</strong><br/>"; }
  43. elseif (strlen($email) > 30)
  44. { $error .="Za długi e-mail - max. 30 znaków <br/>";}
  45. elseif (preg_match('/^[a-zA-ZąćęłńóśźżĄĆĘŁŃÓŚŹŻ0-9\-\_\.]+\@[a-zA-ZąćęłńóśźżĄĆĘŁŃÓŚŹŻ0-9\-\_\.]+\.[a-z]{2,4}$/',$mail) == false)
  46. { $error .= "Niepoprawny adres E-mail! <br/>"; }
  47.  
  48. //Sprawdzam temat
  49. if (empty($miasto))
  50. { $error .= "Nie wypełniłeś pola <strong>Temat !</strong><br/>"; }
  51. elseif (strlen($miasto) > 120)
  52. { $error .="Za długi temat - max. 120 znaków <br/>";}
  53.  
  54. //Sprawdzam wiadomosc
  55. if (empty($nazwisko))
  56. { $error .= "Nie wypełniłeś pola <strong>Wiadomość !</strong><br/>"; }
  57. elseif (strlen($nazwisko) > 400)
  58. { $error .="Za długa wiadomość - max. 400 znaków <br/>";}
  59.  
  60. //Sprawdzam czy są błędy i wysyłam wiadomość
  61. if (empty($error))
  62. {
  63. $list = "Przysłał - $imie ($email) <br/> Nazwisko - $nazwisko";
  64.  
  65. if (mail($odbiorca, $temat, $list, $header))
  66. {
  67. $error .= "Twoja wiadomość została wysłana";
  68. setcookie("send", time()+60, time()+60);
  69. }
  70. else
  71. { $error .= "Wystąpił błąd podczas wysyłania wiadomości, spróbuj później.";}
  72. }
  73. }
  74. ?>
  75.  
  76.  
  77. </body>
  78. </html>
  79.  


Domyślam się że pewnie jest coś nieźle namieszane
Kostek.88
Dlaczego raz otworzyles formularz, a kilka razy pozamykales znacznik <form>? Przeciez Ci dane wszystkie nie wyjda do skryptu.
Niktoś
Może poczytaj jakieś kursy html jeszcze raz na temat tworzenia formularzy-jakie tagi do czego służą-jak się je otwiera i domyka bo ten twój formularz jest cały do poprawy.
Widząc takie coś:

  1. <select name="montaz" id="montaz">
  2. <option>TAK</option>
  3. <option>NIE</option>

to ciarki przechodzą.

Zachęcam do skorzystania z jakiegoś tutoriala na temat tworzenia formularzy i struktury html.
Kostek.88
Niktoś, wysililbys sie troche i podal poprawne rozwiazanie przytoczonego fragmentu wink.gif Ale generalnie masz racje, formularz do poprawy...

A co do fragmentu, o ktorym mowa, powinno byc tak:
  1. <label for="montaz">Opis pola select: </label> <----------------- for="ID_POLA_SELECT", nie mylic z nazwa (NAME)
  2. <select name="montaz" id="montaz">
  3. <option value="1">TAK</option>
  4. <option value="0">NIE</option>
  5. </select>

w kazdym option powinno byc value. Jak podasz TAK i NIE, to nie przejda te dane, one sa tylko widoczne na stronie. Do skryptu ida tylko te z value.... ja zalozylem 0 na nie i 1 na tak... chyba najlepiej, ale mozesz bawic sie w tak i nie w tamtym miejscu.

EDIT: bym zapomnial...

http://www.kurshtml.edu.pl/html/formularze.html
http://www.w3schools.com/html/html_forms.asp

Ja swoja przygode zaczynalem od http://webmaster.helion.pl/index.php/kurs-html ... ale ten kurs sie bardzo mocno zmienil, wtedy byl dolaczony do Programu Pajaczek... w kazdym razie zerknij, moze sie przyda.
Niktoś
Ech,takich przykładów można by było tutaj powklejać trochę.
  1.  
  2. <input type="text" name="miasto" id="miasto" />
  3.  


<label value="CośTam"></label>-służy do wyświetlania na ekran-że tak lakoicznie powiem.
<input type="text"></input>-służy do wprowadzania danych przez użytkownika.

Nie można zagnieżdżać jednego taga w drugim-dlatego zasugerowałem ,żeby autor tematu jeszcze trochę poduczył się z jakiegoś tutoriala-najlepiej ściągnąć jakiś prosty skrypt i go przeanalizować i spróbować zrobić podobny samemu.
Jak się coś nie uda to porównać go z tym ściągniętym skryptem ,żeby zobaczyć gdzie popełniono błąd.
robertinog
Witam
Siedziałem i zrobiłem ten formularz według waszych ostatnicch porad, działa nawet i wysyła na meila dane.
Ale jest pewien problem działa tylko pod Firefoxem pod IE Chrome i Opera niestety pisze że wiadomość została wysłana ale nic nie przychodzi.

Oto kod

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  4. <title>CYFRA+</title></head>
  5.  
  6.  
  7. <body style="background-image: url('tlo.jpg');
  8. background-color:#999;
  9. background-repeat: no-repeat;
  10. background-position:center;
  11. margin-top: 80px;
  12. margin-bottom: 40px;
  13. margin-right: 0px;
  14. margin-left: 0px;
  15. color: #FFF;
  16. font-size: 14px;
  17. text-align: center; ">
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24. <form action="formularz.php" method="post" >
  25. <table align="center">
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32. <tr>
  33. <td>IMIĘ:</td>
  34. <td><input type="text" name="imie" /> </td>
  35. </tr>
  36.  
  37.  
  38. <tr>
  39. <td>NAZWISKO:</td>
  40. <td><input type="text" name="nazwisko" /></td>
  41. </tr>
  42.  
  43. <tr>
  44. <td>MIEJSCOWOŚĆ:</td>
  45. <td><input type="text" name="citi" /></td>
  46. </tr>
  47.  
  48. <tr>
  49. <td>adres e-mail: </td>
  50. <td><input type="text" name="email" /></td>
  51. </tr>
  52.  
  53. <tr>
  54. <td>NUMER TELEFONU:</td>
  55. <td><input type="text" name="telefon" /></td>
  56. </tr>
  57.  
  58. <tr>
  59. <td>WOJEW&Oacute;DZTWO:</td>
  60. <td><select name="wojewodztwo">
  61. <option>Mazowieckie</option>
  62. <option>Świętokrzyskie</option>
  63. <option>Śląskie</option>
  64. <option>Dolnośląskie</option>
  65. </select></td>
  66. </tr>
  67.  
  68. <tr>
  69. <td>PAKIET:</td>
  70. <td><select name="pakiet">
  71. <option>2010</option>
  72. <option>2009</option>
  73. <option>START</option>
  74. <option>KOMPAKT</option>
  75. <option>2006</option>
  76. <option>2005</option>
  77. <option>2004</option>
  78. <option>2003</option>
  79. <option>2002</option>
  80. </select></td>
  81. </tr>
  82.  
  83. <tr>
  84. <td>DEKODER:</td>
  85. <td><select name="dekoder">
  86. <option>PVR PACE</option>
  87. <option>PVR PHILIPS</option>
  88. <option>HD Sagemcom</option>
  89. <option>DEKODER SD</option>
  90. </select></td>
  91. </tr>
  92.  
  93.  
  94. <tr>
  95. <td>MONTAŻ: </td>
  96. <td>
  97. <input type="radio" name="montaz" value="TAK" />TAK
  98. <input type="radio" name="montaz" value="NIE"/> NIE
  99. </td>
  100. </tr>
  101.  
  102. <tr>
  103. <td>ANTENA:</td>
  104. <td><select name="antena">
  105. <option>80cm</option>
  106. <option>60cm</option>
  107. </select></td>
  108. </tr>
  109.  
  110. <tr>
  111. <td>Informacje dodatkowe: </td>
  112. <td><textarea name="informacje" rows="5" cols="20">
  113.  
  114. </td>
  115. </tr>
  116.  
  117. <tr>
  118. <td>&nbsp;</td>
  119. <td><input type="submit" name="submit" value="Wyślij formularz"/>
  120. <input type="reset" name="reset" value="Wyczyść"/></td>
  121. </tr>
  122.  
  123.  
  124. </table>
  125. </form>
  126.  
  127.  
  128.  
  129.  
  130. </body>
  131. </html>
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  


i pliczek php
  1.  
  2. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  3. <?php
  4. //--- początek formularza ---
  5. if(empty($_POST['submit'])) {
  6. ?>
  7.  
  8. <?php
  9. } else {
  10.  
  11. //twoje dane
  12. $email = 'robg@o2.pl';
  13.  
  14. //dane z formularza
  15. $imie = $_POST['imie'];
  16. $nazwisko = $_POST['nazwisko'];
  17. $citi = $_POST['citi'];
  18. $email = $_POST['email'];
  19. $telefon = $_POST['telefon'];
  20. $wojewodztwo = $_POST['wojewodztwo'];
  21. $pakiet = $_POST['pakiet'];
  22. $dekoder = $_POST['dekoder'];
  23. $montaz = $_POST['montaz'];
  24. $antena = $_POST['antena'];
  25. $informacje = $_POST['informacje'];
  26.  
  27.  
  28.  
  29. if(!empty($imie) && !empty($nazwisko) && !empty($email)) {
  30.  
  31. //--- początek funkcji weryfikującej adres e-mail ---
  32. function checkMail($checkmail) {
  33. if(filter_var($checkmail, FILTER_VALIDATE_EMAIL)) {
  34. if(checkdnsrr(array_pop(explode("@",$checkmail)),"MX")){
  35. return true;
  36. }else{
  37. return false;
  38. }
  39. } else {
  40. return false;
  41. }
  42. }
  43. //--- koniec funkcji ---
  44. if(checkMail($email)) {
  45. //dodatkowe informacje: ip i host użytkownika
  46. $ip = $_SERVER['REMOTE_ADDR'];
  47. $host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
  48.  
  49. //tworzymy szkielet wiadomości
  50. //treść wiadomości
  51. $mailText = "Treść wiadomości:$pakiet\nOd: $imie, $nazwisko, \n Miasto:$citi, \n e-mail:$email, \n telefon:$telefon, \n Województwo: $wojewodztwo, \n Dekoder: $dekoder, \n Antena: $antena, \n Montaż: $montaz, \n Uwagi: $informacje";
  52.  
  53.  
  54.  
  55. //adres zwrotny
  56. $mailHeader = "From: $imie <$email>";
  57.  
  58. //funkcja odpowiedzialna za wysłanie e-maila
  59. @mail($email, 'Formularz kontaktowy', $mailText, $mailHeader) or die('Błąd: wiadomość nie została wysłana');
  60.  
  61. //komunikat o poprawnym wysłaniu wiadomości
  62. echo 'Wiadomość została wysłana';
  63. } else {
  64. echo 'Adres e-mail jest niepoprawny';
  65. }
  66.  
  67. } else {
  68. //komunikat w przypadku nie powodzenia
  69. echo 'Wypełnij wszystkie pola formularza';
  70. }
  71.  
  72. //--- koniec formularza ---
  73. }
  74. ?>
  75.  
  76.  
  77.  
qrzysztof
Cytat(Niktoś @ 23.11.2011, 00:07:29 ) *
Ech,takich przykładów można by było tutaj powklejać trochę.
  1.  
  2. <input type="text" name="miasto" id="miasto" />
  3.  


<label value="CośTam"></label>-służy do wyświetlania na ekran-że tak lakoicznie powiem.
<input type="text"></input>-służy do wprowadzania danych przez użytkownika.

Nie można zagnieżdżać jednego taga w drugim

Przecież label dookoła inputa to poprawna konstrukcja.
mikiz65
Raz otworzyłeś formularz <form>, a zamykasz go ileś razy. Wykasuj wszystkie </form> poza ostatnim.
robertinog
Witam
Kod html sprawdzany był przez validator i jest wszystko ok
Formularz poprawnie wysyła dane, problem w tym że tylko w FireFoxie, w każdej innej przeglądarce idzie w kosmos
qrzysztof
Sprawdziłem ostatnią wersję, którą podałeś i działa w IE, Chrome, Operze, a nawet w Safari smile.gif

Może wina leży po stronie serwera, z którego to wysyłasz.
robertinog
Niestety u mnie nie działa w dalszym ciągu stronę mam na nazwa.pl
qrzysztof
Sam jestem ciekaw. Dodam tylko, że ja również na nazwa.pl testowałem, więc ten trop raczej odpada.
Niktoś
Cytat
Przecież label dookoła inputa to poprawna konstrukcja.
Ech faktycznie -kurcze,pierwszy raz spotkałem się z tym u mnie taka konstrukcja odpada.Poza typ takiej konstrukcji powinno się unikać.
Do tego służy <label for="InputImie">Imie:</label>-teraz css'em ,możesz dowolnie wystylizować label.
W pierwszym przypadku już,tak łatwo nie będzie bo sobie wystylizujesz inputa.
Po za tym:co chce osiągnąć autor tym ,że

<label>

<input type="text" name="miasto" id="miasto" />

</label>
bezmyślnie naużywa tego tagu-przecież nic tym nie osiąg tylko generuje dodatkowe tagi w swoim kodzie źródłowym.
Ale widzę,że już poprawione,trochę na lepsze.
qrzysztof
Eee tam, istnieją zwolennicy jednego podejścia i zwolennicy drugiego. Ale pisanie, że któregoś z nich powinno się unikać to już spora przesada, bo niby dlaczego, skoro oba są poprawne.

Wcale nie jest też tak, że trzeba sobie wybrać jeden sposób zapisywania elementów label i się go trzymać. Ja na przykład używam tego, który w danym miejscu mi bardziej pasuje. Czasami łatwiej wystylizować jeden element label niż osobno label i input. Do tego brak atrybutu for to mniej pisania i trochę większa przejrzystość. Ale programowanie to nie religia. O ile nie łamiesz zasad możesz używać tego, co Ci bardziej pasuje.

------------------
@robertinog - wygląda, że problem to masz, ale niekoniecznie z tym skryptem. Wrzuć go na serwer i daj linka to przetestujemy.
robertinog
Witam
Wrzuciłem oto link http://www.cyfra.info.pl/order/kontakt.html
qrzysztof
Śmiga aż miło pod wszystkimi przeglądarkami, także skryptem nie masz się chyba co przejmować.

Albo coś dziwnego dzieje się u Ciebie na komputerze, albo nie przetestowałeś tego dokładnie. A może źle opisałeś problem, bo maile dochodzą.
robertinog
Witam
A korzystał ktoś z was z tego linka co podałem bo do mnie z tego linka nic nie przychodzi na skrzynke
Pozdrawiam
Niktoś
Może gdzieś ci ta poczta w spamie ląduje.Sprawdź.
robertinog
Szanowni koledzy już działa z każdej przeglądarki, z tym że jest jeden problem wiadomość nie trafia do mnie tylko do klienta który wpisze swój adres e-mail
Gdzieś coś trzeba zmienić
Pozdrawiam
nospor
Spójrz na argumenty funkcji mail(), której używasz. Jak już spojrzysz w manualu co jest czym, to zmien na swoj adres.
robertinog
Zamykam Sprawę była jedna rzecz źle zrobiona
$email był zarówno przy e-mailu który wpisuje wypełniający jak i przy funkcji wysyłania poprawiłem i śmiga
W każdym razie dziękuje wszystkim za pomoc i zaangażowanie.
Pozdrawiam
Wszystkich
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.