Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] formularz zgloszeniowy
Forum PHP.pl > Forum > Przedszkole
n0sfera2
Witam
Potrzebuje pomocy z PHP, chodzi o to iż mimo że zaznaczam opcję "Płeć" to i tak na maila nic takiego nie dochodzi.
Poniżej link do spakowanego pliku php

http://www.sendspace.pl/file/a297bead3c336da2f6ee5e1

z góry dziękuje za pomoc
minolone
Witam. Kolego przede wszystkim to jak chcesz pomocy to nie zamieszczaj plikow na osobnych serwerach, wklejaj kod na forum,

a w swoim kodzie 

  1. <input type="checkbox" name="plec[]" value="męska" id="pole1" onclick="this.form.elements['pole2'].disabled = this.checked" />
  2. <label for="pole1">męska&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  3. <input type="checkbox" name="plec[]" value="żeńska" id="pole2" onclick="this.form.elements['pole1'].disabled = this.checked" />
  4. <label for="pole2">żeńska</label></td>
 

masz

  1. name=plec[]


a pobierasz zmienna przy wysylaniu 

  1. $_POST['plec']


w formularzu zamien 

  1. name=plec[]
  2.  
  3. na to
  4.  
  5. name=plec


powinno pomoc





grassmen
Jeżeli nie to co napisał "minolone" to trzeba przepatrzeć funkcję mail czy aby tam nie za dużo parametrów może trzeba zastosować from...
n0sfera2
minolone- już tak wcześniej próbowałem i z nawiasami i bez i ciągle nie wysyła tych danych. idzie wszystko prócz checkboxów

grassmen- planuje rozbudować jeszcze bardziej ten formularz (jak zacznie działać poprawnie) czyli będzie jeszcze więcej danych do przesyłania

ogólnie to nie znam się na php, robię to przy pomocy kursów z neta - to tak dla wyjaśnienia z kim piszecie winksmiley.jpg
d3f3nd3r
  1. <input type="checkbox" name="plec" value="męska" id="pole1" onclick="this.form.elements['pole2'].disabled = this.checked" />
  2. <label for="pole1">męska&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  3. <input type="checkbox" name="plec" value="żeńska" id="pole2" onclick="this.form.elements['pole1'].disabled = this.checked" />
  4. <label for="pole2">żeńska</label></
minolone
Kolego proponuje ci dosc dobre rozwiazanie, zamiast funkcji " mail() " uzyj " phpmailer "


Tutaj masz wszystko opisane dokladnie Phpmailer wraz z linkami do pobrania,

załoz sobie jakas darmowa poczte, i z niej bedziesz do siebie wysylal maile, wieksza pewnosc ze e-mail zostanie wyslany bo funkcja uzywa SMTP, a jezeli bedziesz wysylal jeszcze maile do kogos to tez bedzie ci duzo latwiej,

oto twoj kod dzialajacy w 100%

  1. <?php
  2. if (empty($_POST['submit'])){
  3. ?>
  4.  
  5. <table>
  6. <form action="?" method="post">
  7. <b>DANE OSOBY ZGŁASZAJĄCEJ:</b>
  8.  
  9. <tr><td>Imię i Nazwisko:</td>
  10. <td><input type="text" name="imienazwisko" style="width:500px;"/></td>
  11. </tr>
  12.  
  13. <tr><td>Specjalizacja:</td>
  14. <td><input type="text" name="specjalizacja" style="width:500px;"/></td>
  15. </tr>
  16.  
  17. <tr><td>Adres:</td>
  18. <td><input type="text" name="adres" style="width:500px;"/></td>
  19. </tr>
  20.  
  21. <tr><td>Telefon:</td>
  22. <td><input type="text" name="telefon" style="width:500px;"/></td>
  23. </tr>
  24.  
  25. <tr><td>Fax:</td>
  26. <td><input type="text" name="fax" style="width:500px;"/></td>
  27. </tr>
  28.  
  29. <tr><td>E-Mail:</td>
  30. <td><input type="text" name="email" style="width:500px;"/></td>
  31. </tr>
  32.  
  33. <tr><td><br><b>PACJENT:</b></td></tr>
  34.  
  35. <tr><td>Inicjały:</td>
  36. <td><input type="text" name="inicjaly" style="width:500px;"/></td>
  37. </tr>
  38.  
  39. <tr><td>Kraj:</td>
  40. <td><input type="text" name="kraj" style="width:500px;"/></td>
  41. </tr>
  42.  
  43. <tr><td>Data urodzenia:</td>
  44. <td><select name="dzienurodzenia">
  45. <option selected="selected"></option>
  46. <option>1</option>
  47. <option>2</option>
  48. <option>3</option>
  49. <option>4</option>
  50. <option>5</option>
  51. <option>6</option>
  52. <option>7</option>
  53. <option>8</option>
  54. <option>9</option>
  55. <option>10</option>
  56. <option>11</option>
  57. <option>12</option>
  58. <option>13</option>
  59. <option>14</option>
  60. <option>15</option>
  61. <option>16</option>
  62. <option>17</option>
  63. <option>18</option>
  64. <option>19</option>
  65. <option>20</option>
  66. <option>21</option>
  67. <option>22</option>
  68. <option>23</option>
  69. <option>24</option>
  70. <option>25</option>
  71. <option>26</option>
  72. <option>27</option>
  73. <option>28</option>
  74. <option>29</option>
  75. <option>30</option>
  76. <option>31<option>
  77. </select> <select name="miesiacurodzenia">
  78. <option selected="selected"></option>
  79. <option>Styczeń</option>
  80. <option>Luty</option>
  81. <option>Marzec</option>
  82. <option>Kwiecień</option>
  83. <option>Maj</option>
  84. <option>Czerwiec</option>
  85. <option>Lipiec</option>
  86. <option>Sierpień</option>
  87. <option>Wrzesień</option>
  88. <option>Październik</option>
  89. <option>Listopad</option>
  90. <option>Grudzień</option>
  91. </select>
  92. <input type="text" name="rokurodzenia" style="width:40px;"/></td>
  93. </tr>
  94.  
  95. <tr><td>Gatunek:</td>
  96. <td><input type="text" name="gatunek" style="width:500px;"/></td>
  97. </tr>
  98.  
  99.  
  100. <tr><td>Płeć:</td>
  101. <td>
  102. <input type="checkbox" name="plec" value="m봫a"/>
  103. <label for="pole1">męska&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  104. <input type="checkbox" name="plec" value="ࠥ񳫡"/>
  105. <label for="pole2">żeńska</label></td>
  106. </tr>
  107.  
  108.  
  109. <tr><td>Masa ciała:</td>
  110. <td><input type="text" name="masaciala" style="width:50px;"/> kg</td>
  111. </tr>
  112.  
  113. <tr><td>Data wystąpienia objawów:</td>
  114. <td><select name="dzienobjawow">
  115. <option selected="selected"></option>
  116. <option>1</option>
  117. <option>2</option>
  118. <option>3</option>
  119. <option>4</option>
  120. <option>5</option>
  121. <option>6</option>
  122. <option>7</option>
  123. <option>8</option>
  124. <option>9</option>
  125. <option>10</option>
  126. <option>11</option>
  127. <option>12</option>
  128. <option>13</option>
  129. <option>14</option>
  130. <option>15</option>
  131. <option>16</option>
  132. <option>17</option>
  133. <option>18</option>
  134. <option>19</option>
  135. <option>20</option>
  136. <option>21</option>
  137. <option>22</option>
  138. <option>23</option>
  139. <option>24</option>
  140. <option>25</option>
  141. <option>26</option>
  142. <option>27</option>
  143. <option>28</option>
  144. <option>29</option>
  145. <option>30</option>
  146. <option>31<option>
  147. </select> <select name="miesiacobjawow">
  148. <option selected="selected"></option>
  149. <option>Styczeń</option>
  150. <option>Luty</option>
  151. <option>Marzec</option>
  152. <option>Kwiecień</option>
  153. <option>Maj</option>
  154. <option>Czerwiec</option>
  155. <option>Lipiec</option>
  156. <option>Sierpień</option>
  157. <option>Wrzesień</option>
  158. <option>Październik</option>
  159. <option>Listopad</option>
  160. <option>Grudzień</option>
  161. </select>
  162. <input type="text" name="rokobjawow" style="width:40px;"/></td>
  163. </tr>
  164.  
  165. <tr>
  166. <td>Opis objawów niepożądanych:</td>
  167. <td><textarea name="opisobjawow" style="height:150px;width:500px;"></textarea></td>
  168. </tr>
  169.  
  170. <tr><td>&nbsp;</td>
  171. <td><input type="submit" name="submit" value="Wyślij formularz"/></td>
  172. </form></tr>
  173. </table>
  174.  
  175.  
  176.  
  177. <?php
  178. }elseif(!empty($_POST['imienazwisko']) && !empty($_POST['email']) && !empty($_POST['opisobjawow'])){
  179. /* Funkcja sprawdzająca poprawność E-Maila */
  180. function SprawdzEmail($email) {
  181. if (!eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,4}$" , $email)){
  182. return false;
  183. }
  184. return true;
  185. }
  186.  
  187.  
  188.  
  189. if(SprawdzEmail($_POST['email'])){
  190. /* Tworzymy szkielet wysyłanej wiadomości */
  191. $ip=$_SERVER['REMOTE_ADDR'];
  192. $host=gethostbyaddr($_SERVER['REMOTE_ADDR']);
  193. $plec = $_POST['plec'];
  194.  
  195. require(phpmailer/class.phpmailer.php);
  196. $mail = new PHPMailer();
  197. $mail->PluginDir = "phpmailer/";
  198. $mail->From = "login@serwer.pl";
  199. $mail->FromName = "moje Imię i nazwisko albo nick";
  200. $mail->Host = "smtp.wp.pl";
  201. $mail->Mailer = "smtp";
  202. $mail->Username = "login";
  203. $mail->Password = "Hasło do poczty";
  204. $mail->SMTPAuth = true;
  205. $mail->Port = 25;
  206. $mail->SetLanguage("pl", "phpmailer/language/");
  207. $mail->Subject = "tytuł maila";
  208. $mail->Body = '
  209.  
  210. IP nadawcy: = '.$ip.'
  211. HOST nadawcy: = '.$host.'
  212. Adres e-mail nadawcy: = '.$_POST[email].'
  213. Płeć nadawcy: = '.$plec.'
  214.  
  215. Opis objawów
  216. '.$_POST[opisobjawow].'
  217. ';
  218.  
  219. $mail->AddAddress("dokogowysylamy@serwer.pl","imie i nazwisko bądź nick osoby do której wysyłamy");
  220. if($mail->Send())
  221. {
  222. echo 'E-mail został wysłany';
  223. }
  224. else
  225. {
  226. echo 'E-mail nie mógł zostać wysłany, przyczyna :'. $mail->ErrorInfo;
  227. }
  228.  
  229. }else{ echo "Wprowadzony adres E-Mail jest niepoprawny"; }
  230. }else{ echo "Wypełnij wszystkie pola formularza"; }
  231. ?>
  232.  
  233.  
  234.  
  235. </HTML>
  236.  


czyli:

zaloz poczte, wypelnij dane, i pobrane pliki "klasa phpmailer" zapisujesz w katalogu "phpmailer" obok twojego pliku contact.php i wszystko dziala jak powinno. Pozdrawiam i mysle ze ci sie to przyda




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.