Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][HTML] Formularz kontaktowy i weryfikacja
mateopl
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.08.2008

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


Witam
Mam problem ze zrobieniem weryfikacji poprawnosci wypelnienia pol formularza. Mam podstawowy skrypt ktory to sprawdza lecz chcialbym go przerobic dla kilku pol oddzielnie i zeby dzialal na innej zasadzie..


Mam dwa rozne pytania w formularzu o takich samych odpowiedziach, nie wiem w jaki sposob zrobic cos takiego by w przypadku nie wybrania zadnej odp z obu pytan weryfikacja zatrzymala skrypt i pojawil sie komunikat aby podac choc jedna odp obojetnie z ktorego pyt.. jesli natomiast bedzie podana 1 odp z ktoregokolwiek pyt skypt sie wykonuje dalej i mail zostanie wyslany...
Ponizej podaje przyklad pyt form i metode weryfikacji wypelnionych pol:


Formularz - pytania
  1. <div class="slowa"><b>Jak się dowiedziałeś o mnie?</b></div>
  2.   <table width="400" border="0" cellspacing="0" cellpadding="0">
  3.   <tr>
  4.   <td width="200"><div class="slowa">Internet</div></td>
  5.   <td width="200" align="left">
  6.   <select name="internet1" class="pole" size="1">
  7.   <option></option>
  8.   <option value="Google" selected="selected">Google</option>
  9.   <option value="Yahoo">Yahoo</option>
  10.   <option value="MSN">MSN</option>
  11.   <option value="Inna wyszukiwarka">Inna wyszukiwarka</option>
  12.   <option value="Inna strona">Inna strona</option>
  13.   </select>
  14.   </div> </td>
  15.   </tr>
  16.   <tr>
  17.   <td><div class="slowa">Czasopismo</div></td>
  18.   <td align="left">
  19.   <select name="czasopismo1" class="pole" size=\"1\">
  20.   <option></option>
  21.   <option value="Gazeta 1">Gazeta 1</option>
  22.   <option value="Gazeta 2">Gazeta 2</option>
  23.   <option value="Gazeta 3">Gazeta 3</option>
  24.   <option value="Gazeta 4">Gazeta 4</option>
  25.   </select>
  26.   </td>
  27.   </tr>
  28.   <tr>
  29.   <td><div class="slowa">Od znajomego</div></td>
  30.   <td align="left">
  31.   <input name="znajomy1" type="text" class="pole"size="35" /> </td>
  32.   </tr>
  33.   <tr>
  34.   <td><div class="slowa">Inne</div></td>
  35.   <td align="left">
  36.   <input name="inne1" type="text" class="pole" size="35" /> </td>
  37.   </tr>
  38.   </table>
  39.   <br />
  40.  
  41.   <div class="slowa"><b>Jak się dowiedziałeś o nas?</b></div>
  42.   <table width="400" border="0" cellspacing="0" cellpadding="0">
  43.   <tr>
  44.   <td width="200"><div class="slowa">Internet</div></td>
  45.   <td width="200" align="left">
  46.   <select name="internet2" class="pole" size="1">
  47.   <option></option>
  48.   <option value="Google" selected="selected">Google</option>
  49.   <option value="Yahoo">Yahoo</option>
  50.   <option value="MSN">MSN</option>
  51.   <option value="Inna wyszukiwarka">Inna wyszukiwarka</option>
  52.   <option value="Inna strona">Inna strona</option>
  53.   </select> </td>
  54.   </tr>
  55.   <tr>
  56.   <td><div class="slowa">Czasopismo</div></td>
  57.   <td align="left">
  58.   <select name="czasopismo2" class="pole" size="1">
  59.   <option></option>
  60.   <option value="Gazeta 1">Gazeta 1</option>
  61.   <option value="Gazeta 2">Gazeta 2</option>
  62.   <option value="Gazeta 3">Gazeta 3</option>
  63.   <option value="Gazeta 4">Gazeta 4</option>
  64.   </select> </td>
  65.   </tr>
  66.   <tr>
  67.   <td><div class="slowa">Od znajomego</div></td>
  68.   <td align="left">
  69.   <input name="znajomy2" type="text" class="pole" size="35" /> </td>
  70.   </tr>
  71.   <tr>
  72.   <td><div class="slowa">Inne</div></td>
  73.   <td align="left">
  74.   <input name="inne2" type="text" class="pole" size="35" /> </td>
  75.   </tr>
  76.   </table>


Weryfikacja pol - sprawdzenie czy sa wypelnione czy nie
  1. <?php
  2.  echo "<script type=\"text/javascript\">\n";
  3.     echo "<!--\n";
  4.     echo "function validar(form1) {\n";
  5.  echo "if (form1.jakies_pole_formularza.value.length < 2) {\n";
  6.       echo "alert('";
  7.       echo "Wypelnij to pole";
  8.       echo "');\n";
  9.       echo "form1.jakies_pole_formularza.focus();";
  10.       echo "return (false);}\n";
  11. ?>


Bardzo prosze o pomoc
Z gory dziekuje za wszystkie odp
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
Misiur66
post
Post #2





Grupa: Zarejestrowani
Postów: 170
Pomógł: 11
Dołączył: 2.03.2008
Skąd: Lublin

Ostrzeżenie: (10%)
X----


Nie rozumiem jednego: Po co używasz echo() dla czystego skryptu JS? Nie możesz go wstawić w pliku HTML?
Go to the top of the page
+Quote Post
mateopl
post
Post #3





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.08.2008

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


To nie jest moj skypt znalazlem go w sieci.. Dziala dobrze tylko chcialbym go jakos przerobic cos dopisac by wykonywal akurat takie sprawdzanie pol jak podalem w przykladzie..
Go to the top of the page
+Quote Post
Misiur66
post
Post #4





Grupa: Zarejestrowani
Postów: 170
Pomógł: 11
Dołączył: 2.03.2008
Skąd: Lublin

Ostrzeżenie: (10%)
X----


Czyli tak naprawdę wygląda tak:

Kod
<script type="text/javascript">
<!--
function validar(form1) {
if (form1.jakies_pole_formularza.value.length < 2) {
alert('Wypelnij to pole');
form1.jakies_pole_formularza.focus();
return (false);
}


Ok, zasadnicze pytanie. Chcesz to zrobić w JS, czy w PHP?
Go to the top of the page
+Quote Post
mateopl
post
Post #5





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.08.2008

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


tak zeby to dzialalo:) Powiem jeszcze ze oprocz tych pol sa tam inne ktore chce pozostawic w tej technice co podalem w przykladzie.. bo wszystko dobrze dziala...
Go to the top of the page
+Quote Post
Misiur66
post
Post #6





Grupa: Zarejestrowani
Postów: 170
Pomógł: 11
Dołączył: 2.03.2008
Skąd: Lublin

Ostrzeżenie: (10%)
X----


Hehe, bo wiesz, tu jest JS zapisany w pliku PHP... A to jest głupota. Zaraz to sobie w JS zrobię (będzie dużo bardziej dynamiczne), ale komputery z wyłączonym JS będą się musiały obejść smakiem.

EDIT:

Jeżeli możesz to daj cały plik index.html czy taj jak go masz, bo nie wiem czy nawet masz nazwę formularza dobrą ;P

Ten post edytował Misiur66 3.01.2009, 15:18:36
Go to the top of the page
+Quote Post
mateopl
post
Post #7





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.08.2008

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


Caly formularz jest bardzo dlugi i chyba na forum nie za bardzo bo podawac.. wszystko dziala w nim dobrze tylko chodzi mi o przerobienie tego kawalka skryptu weryfikacji... moze byc php moze byc taki jak jest aby robil to co chce:)
Go to the top of the page
+Quote Post
Misiur66
post
Post #8





Grupa: Zarejestrowani
Postów: 170
Pomógł: 11
Dołączył: 2.03.2008
Skąd: Lublin

Ostrzeżenie: (10%)
X----


Hmm... napiszę ładny i zgodny z W3C JS-owy skrypt. Ale mimo wszystko chciałbym przynajmniej wiedzieć jak się nazywa formularz biggrin.gif I wytłumacz mi dokładnie co chcesz uzyskać tym formularzem. Zapewne sposób w jaki ktoś się dowiedział o twojej stronie? I co najmniej jedno ma zostać wypełnione?

AAA, już wiem, wstawiłem to sobie w edytorze i w podglądzie się zorientowałem biggrin.gif Czyli albo się dowiedziałem o tobie, albo o nas.

Edit:

Mimo wszystko najlepiej by było zrobić dwa całkiem oddzielne formularze... Bo tak to nie ma sensu. Co do nazwy to chodzi o <form name="nazwaformularza" action="..." method="..."> Więc lepiej zrobić dwa formularza o jednym atrybucie action, przy method = Get. Wtedy wystarczy w pliku php wpisać
Kod
if(isset($_GET['przycisk_submit_form_1']){ echo('Pierwszy form')};
elseif(isset($_GET['przycisk_submit_form_2']){ echo('Drugi form')};


Ten post edytował Misiur66 3.01.2009, 16:03:54
Go to the top of the page
+Quote Post
mateopl
post
Post #9





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 20.08.2008

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


Dokladnie tak jak napisales. Formularz nazywa sie form1. Nie wiem o co dokladnie Ci chodzi tzn o jaka nazwe...?

Tak. Ale jesli ktos wybierze np kikla odp z tych obu pytan to form jest OK i mail przechodzi... Jesli natomiast nie wybierze ani jednej odp obojetnie z ktorego pyt to error...

A wiesz moze w jaki sposob zrobic taki efekt podswietlenia (obramowania np kolorem czerwonym) danego pola z form w ktorym ktos nie podal odp.. w tym moim skrypcie weryfikacji jesli wyskowy komunikat o niewypelnieniu danego pola po kliknieciu OK w komunikacie automatycznie kursor zabiera mnie do tego niewypelnionego pola a ja chcialbym jeszcze je w jakis sposob podswietlic oprocz tego zaznaczenia kursora.. Wiesz jak takie cos mozna zrobic..?

Ten post edytował mateopl 3.01.2009, 16:02:45
Go to the top of the page
+Quote Post
Misiur66
post
Post #10





Grupa: Zarejestrowani
Postów: 170
Pomógł: 11
Dołączył: 2.03.2008
Skąd: Lublin

Ostrzeżenie: (10%)
X----


Oczywiście! Wejdź na http://misiur.cal.pl i zobacz rejestracje (mam tablicę php i się wyświetla na końcu.)

Co do tego kursora to niestety biggrin.gif Ale pokazuje się ramka z ostrzeżeniem.

Hm... powinno się w JS zmienić style. Zaraz ci podam kurs z którego się uczyłem.

Edit:

Proszę, tutaj masz taki fragment o tym zmienianiu w JS:

http://ferrante.pl/2007/03/17/praktyczne-w...-javascript-10/

Ten post edytował Misiur66 3.01.2009, 16:18:01
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 Aktualny czas: 20.08.2025 - 04:44