Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Sprawdzenie formularza
Kshyhoo
post
Post #1





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Witam. Jakoś nie mam szczęścia do tego forum, ostatnio nikt nie odpowiada w moich wątkach. Może w maju zła passa się przełamie ;p Do rzeczy.
Mam formularz, który ma za zadanie pobrać dane z "radio". Nic trudnego (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Cały problem, że "radio" odpowiada wyborowi grafiki, której listę ładuję w pętli, łącznie z "radio":
  1. <?php
  2. echo "<table style='border: none'><tr>";
  3. for ($i=0;$i<count($lista);$i++) {
  4. // liczba kolumn
  5.    if (!($i % $kolumn)) echo "</tr><tr>";
  6.  
  7. echo "<td style='border: 1px solid black; text-align: center'><img src='".$sciezka1."/".$lista[$i]."'><input type='radio' name='herby' value='".$lista[$i]."'></td>";
  8. }
  9. echo "</tr><table>";
  10. ?>

Pomoże ktoś znaleźć rozwiązanie?
EDIT: Pobrać dane pobiera, chodzi o sprawdzenie, zablokowanie przejścia dalej i ponowne przetworzenie formularza, w przypadku nie zaznaczenia żadnej opcji.

Ten post edytował Kshyhoo 3.05.2009, 09:50:56
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
okitoki
post
Post #2





Grupa: Zarejestrowani
Postów: 214
Pomógł: 18
Dołączył: 25.04.2009

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


witaj, jaką metodą wysyłasz formularz, bo jak get to informacje będziesz miał w tablicy $_GET['herby'] jeżeli to post to analogicznie $_POST['herby'].

nie łatwiej, Ci pierwszy ustawić jako domyślny, wtedy już użytkownik będzie musiał coś wybrać, albo będzie miał domyślny
Go to the top of the page
+Quote Post
Kshyhoo
post
Post #3





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Znalazłem na to rozwiązanie. Testuje niezdefiniowaną ilość:
  1. <script language='javascript' type='text/javascript'>
  2. function checkRadios() {
  3. var el = document.forms[0].elements;
  4. for(var i = 0 ; i < el.length ; ++i) {
  5. if(el[i].type == "radio") {
  6. var radiogroup = el[el[i].name]; // pobiera wcisniety radio
  7. var itemchecked = false;
  8. for(var j = 0 ; j < radiogroup.length ; ++j) {
  9. if(radiogroup[j].checked) {
  10. itemchecked = true;
  11. break;
  12. }
  13. }
  14. if(!itemchecked) {
  15. alert("Musisz wybrać kolor pola \" "+el[i].name+" \"!");
  16. if(el[i].focus)
  17. el[i].focus();
  18. return false;
  19. }
  20. }
  21. }
  22. return true;
  23. }

Potem w kodzie formularza:
  1. echo "<form name='xxx' action='yyy' method='POST' onSubmit='return checkRadios(this);'>";


Może komuś się przyda.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 17.09.2025 - 16:01