Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][html]Formularz i skrypt w jednym pliku
tuks
post 19.06.2007, 22:10:38
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.06.2007

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


Witam
Pracuje właśnie nad formularzem kontaktowym do mojej strony. Formularz działa bez zarzutu ale jest on podzielony na dwa pliki. Pierwszy plik z czystym kodem html,a drugi to skrypt php z funkcja mail(). Zastanawiam się jaki sposób można połączyć kod html formularza ze skryptem php wysyłającym wiadomość aby całość znajdowała sie w jednym pliku. Myślałem też o tym czy zamiast wywoływania pliku ze skryptem php do przetwarzania formularza można wywołać odpowiednia funkcje bądź klasę. Poniżej zamieszczam kod obu plików:

formularz
  1. <form name="kontakt" method="post" action="silnik.php">
  2.  
  3. <label>Odbiorca
  4. <select name="odbiorca">
  5. <option>Wybierz odbiorce</option>
  6. <option value="adresemail1">Webmaster</option>
  7. <option value="adresemail2">Info</option>
  8. <option value="adresemail3">Prywatny</option>
  9. </select>
  10. </label>
  11.  
  12. <label>Imie i nazwisko
  13. <input type="text" name="imieNadawcy" />
  14. </label>
  15.  
  16. <label>Twoj adres email
  17. <input type="text" name="nadawca" />
  18. </label>
  19.  
  20. <label>Temat
  21. <input type="text" name="temat" />
  22. </label>
  23.  
  24. <label>Wiadomosc
  25. <textarea name="wiadomosc" cols="10" rows="2"></textarea>
  26. </label>
  27.  
  28. <input type="submit" value="Wyslij"/>
  29.  
  30. </form>


skrypt php
  1. <?php
  2. $odbiorca=$_POST['odbiorca'];
  3. $wiadomosc=$_POST['wiadomosc'];
  4. $temat=$_POST['temat'];
  5. $od=$_POST['imieNadawcy'];
  6. $nadawca=$_POST['nadawca']; 
  7.  
  8.  mail( $odbiorca, $temat, $wiadomosc,
  9.  "From: $odrn"
  10.  ."Reply-to: $nadawca")
  11.  ?>
Go to the top of the page
+Quote Post
kossa
post 19.06.2007, 22:21:55
Post #2





Grupa: Zarejestrowani
Postów: 1 165
Pomógł: 9
Dołączył: 9.04.2002
Skąd: Toruń

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


podziel kod na 2 funkcje

f-cja 1 skrypt wysyłający meila

f-cja 2 generowanie formularza

wykorzystaj if.. i wywoluj odpowiednia funkcje w zaleznosci od warunku, proste, dasz rade smile.gif nie pisze gotowca, skoro napisales skrypcik to podzialasz i czegos sie nauczysz, beda problemy - pisz na forum smile.gif

powodzenia,
Lukasz


--------------------
Go to the top of the page
+Quote Post
tuks
post 20.06.2007, 20:08:41
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.06.2007

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


Witam ponownie
Zaczalem zmieniac i zatrzymalem sie w takim miejscu

  1. <?php 
  2.  
  3. function wyslijWiadomosc($odbiorcaf, $wiadomoscf, $tematf, $odf, $nadawcaf)
  4. {
  5. $odbiorca=$odbiorcaf;
  6. $wiadomosc=$wiadomoscf;
  7. $temat=$tematf;
  8. $od=$odf;
  9. $nadawca=$nadawcaf; 
  10.  
  11.  mail( $odbiorca, $temat, $wiadomosc,
  12.  "From: $odrn"
  13.  ."Reply-to: $nadawca")
  14.  
  15. };
  16.  
  17. function wyswietlFormularz()
  18. {
  19.  ?>
  20. <form name="kontakt" method="post" action="form.php">
  21.  
  22. <label>Odbiorca
  23. <select name="odbiorca">
  24. <option>Wybierz odbiorce</option>
  25. <option value="webmaster@laholmsbk.se">Webmaster</option>
  26. <option value="info@laholmsbk.se">Info</option>
  27. <option value="piotr.czernicki@gmail.com">Prywatny</option>
  28. </select>
  29. </label>
  30.  
  31. <label>Imie i nazwisko
  32. <input type="text" name="imieNadawcy" />
  33. </label>
  34.  
  35. <label>Twoj adres email 
  36. <input type="text" name="nadawca" />
  37. </label>
  38.  
  39. <label>Temat
  40. <input type="text" name="temat" />
  41. </label>
  42.  
  43. <label>Wiadomosc
  44. <textarea name="wiadomosc" cols="10" rows="2"></textarea>
  45. </label>
  46.  
  47. <input type="submit" value="Wyslij"/>
  48. </form>
  49.  
  50. <?php
  51.  
  52.  };
  53.  
  54. if()
  55. ?>


1. Zastanawiam sie jaki zrobic warunek, widzialem przyklad z polem hidden, wartoscia i warunkiem NOT, ale jak pozniej bede chcial dodac wiecej funkcji niekoniecznie zawierajacych formularz sposob ten nie zadziala. Jak bede chcial zastosowac dodatkowa zmienna w funkcjach to musze ja jakos z nich wydostac na zewnatrz? Moze jest jakis inny sposob ktory bedzie odpowiedniejszy do sytuacji?
2. Przekazywanie zmiennej z funkcji, mniej wiecej wiem jak stosowac parametry ale zastanawialem sie czy nie bedzie latwiej zmodyfikowac formularz i skrypt do wysylania zeby korzystaly z tablicy, nie mam tylko pojecia jak to moze wygladac.

Pozdrawiam
Go to the top of the page
+Quote Post
Lombi
post 20.06.2007, 20:16:35
Post #4





Grupa: Zarejestrowani
Postów: 237
Pomógł: 11
Dołączył: 12.04.2006

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


Jak napisal mi kiedyś NOSPOR:

POMYSLMY chcesz wyslac mail po nacisnieciu na wyslij wiec może tak:
  1. <?php
  2. If ($_POST["wyslij"])
  3. {
  4. skrypt.php
  5. }
  6. else
  7. {
  8. formularz
  9. }
  10. ?>


  1. <input name="wyslij" type="submit" value="Wyslij"/>


Ten post edytował Lombi 20.06.2007, 20:22:20


--------------------
znowu pomyliłem dwukropek ze średnikiem i starciłem pół dnia na szukanie błędu :)
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 03:44