Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Formularz kontaktowy
Forum PHP.pl > Forum > Przedszkole
barwn
Witam,

próbowałem skonstruować formularz kontaktowy na stronke, ogólnie potrzebuję dwóch takich formularzy, jeden kontaktowy a drugi z polami typu Imię i Nazwisko kapitana, zawodnika 1, 2, 3, 4 itp. próbowałem, i poległem, jestem laikiem jeżeli chodzi o php, gotowce z internetu również nie chcą mnie słuchać, a co mówić o dodaniu jakiegoś dodatkowego pola do formularza :/


Aktualnie próbowałem okiełznać ten kod jednak maile nie dochodzą:
  1. Wybierz gdzie wysłać:<br />
  2. <select name="odbiorca" style="width:300px;">
  3. <option>mail@.pl</option>
  4. <option>mail@.pl</option>
  5. </select>
  6. <br />
  7. Imię i Nazwisko:<br />
  8. <input type="text" name="imienazwisko" style="width:300px;"/><br />
  9. E-Mail:<br />
  10. <input type="text" name="email" style="width:300px;"/><br />
  11. Treść wiadomości:<br />
  12. <textarea name="trescwiadomosci" cols="30" rows="6" style="width:300px;"></textarea><br />
  13. <input type="submit" name="submit" value="Wyślij formularz"/>
  14. <input type="reset" value="Wyczyść"/>
  15. </form>
  16. <?php
  17. /*sprawdzenie wypełnienia wszystkich pól*/
  18. }elseif(!empty($_POST['imienazwisko']) && !empty($_POST['email']) && !empty($_POST['trescwiadomosci'])){
  19. /* Funkcja sprawdzająca poprawność E-Maila */
  20. function SprawdzEmail($email) {
  21. if (!eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,4}$" , $email)){
  22. return false;
  23. }
  24. return true;
  25. }
  26. if(SprawdzEmail($_POST['email'])){
  27. /* Tworzymy szkielet wysyłanej wiadomości */
  28. $adresemail=$_POST['odbiorca'];
  29. $ip=$_SERVER['REMOTE_ADDR'];
  30. /* Wybierz kodowanie znaków usuwając // */
  31. //$charset = 'iso-8859-2';
  32. $charset = 'utf-8';
  33. $host=gethostbyaddr($_SERVER['REMOTE_ADDR']);
  34. $wiadomosc="Od: $_POST[imienazwisko] ($_POST[email])\nIP: $ip, HOST: $host\n\n$_POST[trescwiadomosci]";
  35. $nadawca="From: $_POST[email]";
  36. @mail($adresemail, "Formularz kontaktowy z www.MPTK.pl", "$wiadomosc", "$nadawca");
  37. echo "<span style=\"color: #00D800; font-weight: bold; \">Dziękujemy, formularz został wysłany.</span>";
  38. }else{ echo "<span style=\"color: #FF0000; text-align: center; font-weight: bold;\">Wprowadzony adres E-Mail jest niepoprawny!!!</span>"; }
  39. }else{ echo "<span style=\"color: #FF0000; text-align: center; font-weight: bold;\">Cofnij i wypełnij wszystkie pola formularza!!!</span>"; }
  40. ?>


Czy znalazłaby sie jakaś dobra duszyczka która mi pomoże z ogarnięciem tego? Proszę! sad.gif
tomi1985
kodzik php zmień na

  1. $to = "gdzie wyslac";
  2. $subject = "temat wiadomosci";
  3. $message = "tresc maila";
  4. $from = "od kogo mail";
  5. $headers = "From: $from \r\nContent-type: text/html; charset=utf-8";
  6. mail($to,$subject,$message,$headers);


i powinno działać

a w każdym inpucie gdzi etrzeba dane wpisać dodaj

  1. required


ta funkcja oznacza, że kazdy input musi być wypełniony
Daimos
  1. <option>mail@.pl</option>
  2. <option>mail@.pl</option>

W ten sposób formularz nie przekazuje żadnej wartości, bo wpisujesz tylko taki label, do opcji, czyli tekst do wyświetlenia.
W efekcie, wysyłasz maila, bez podania adresu docelowego. Zamień to na:
  1. <option value="adres@mail.com">mail@.pl</option>
  2. <option value="adres@mail.com">mail@.pl</option>

W atrybucie value podajesz wartość, którą odbierasz dalej za pomocą $_POST
tomi1985
nie prawda....

przekazuje to postem wink.gif
Turson
A gdzie otwierasz <form> ? Bo widzę tylko zamknięcie
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.