Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] odwołanie do wartości zmiennych z pola SELECT
moraw2008
post
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 1
Dołączył: 21.02.2008

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


Witam,

Proszę Was o pomoc, dziś pól dnia spędziłem nad szukaniem rozwiązania problemu, którego wytłumaczenie Wam pewnie zajmie sekundkę.

na podstronie index.php ma htmlowski formularz:

  1.  
  2. <form action=" " method="post">
  3.  
  4. <table>
  5. <tr>
  6. <td valign="top">
  7. Rodzaj wydarzenia:
  8. </td>
  9.  
  10. <td valign="top">
  11.  
  12. <select name="status" size="3" >
  13. <option value="wazne">WAZNE</option>
  14. <option value="mniej_wazne">MNIEJ WAZNE</option>
  15. <option value="niewazne">NIEWAZNE</option>
  16. </select>
  17.  
  18. </td>
  19. </tr>
  20.  
  21. <tr>
  22. <td valign="top">
  23. Dzien:
  24. </td>
  25.  
  26. <td valign="top">
  27.  
  28. <select name="dzien" size="2" >
  29. <option value="pon">PONIEDZIALEK</option>
  30. <option value="wt">WTOREK</option>
  31.  
  32.  
  33. </td>
  34. <tr>
  35. <td colspan="2">
  36.  
  37. <input type="submit" name="Submit" value="Wyslij">
  38.  
  39. </td>
  40. </tr>
  41. </table>
  42.  
  43. </form>
  44.  
  45.  


Po wciśnięciu submita chciałbym zrobić sprawdzenie co zostało wybrane, próbowłem przez if, przez case, odwoływać się do select name i wyłuskać jego wartość, bez efektu.
Jak to powinno się zrobić, nigdy nie używałem pola SELECT w formularzach..

Druga sprawa to:
Chciałem przed formularzem sprawdzić stan submita, w ten sposób:

  1. <?php
  2.  
  3. if (empty($_POST['submit'])) {
  4.  
  5. echo "<table border=\"0\"><form method=\"post\">
  6. <tr>
  7.  
  8. /////////////CAŁY FORMULARZ////////////////
  9.  
  10. </table>";
  11. }
  12. ?>


zawsze tak robiłem, działało - jednak kiedy w formularzu są pola SELECT wywala mi jakieś głupie błędy składniowe.. o co chodzi?

Z GÓRY BARDZO DZIĘKUJĘ ZA POMOC I WYTŁUMACZENIE.
POZDRAWIAM
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kacper.chrapa
post
Post #2





Grupa: Zarejestrowani
Postów: 6
Pomógł: 1
Dołączył: 28.08.2010

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


Witam,

1. Jesli nadal masz bledy skladni: Generujesz forma poprzez echo - i dajesz go jako string w cudzyslowach. Jesli kod formularza ktory przeslales jest DOKLADNIE taki, jaki masz wpisany wewnatrz tych cudzyslowow , to problemem sa cudzyslowy w tym kodzie(np. przy <select name="status"> ), bo one rozbijaja ci ten zewnetrzny string na kawalki - i dlatego interpreterphp sie czepia. Innego sensowniejszego wytlumaczenia nie widac - ew. wklej caly kod programu (bez ucinania forma),to moze cos wyjdzie. Ale w stringu <select> niczym sie nie rozni dla PHP'a od "<krzeselko><nozka></nozka></krzeselko>" ;-) , wiec to nie select jako taki wywoluje bledy skladniowe.


2.Atrybut name pola submit masz nazwany z wielkiej litery(Submit), a w empty piszesz z malej - php rozroznia wielkosc
liter na tym poziomie, wiec kod ci w ten sposob nie zadziala.Zawsze ci bedzie pokazywac formularz,zamiast odpalac
kod else .

3. zeby odebrac wartosc z selecta wystarczy:

echo $_POST['status'];


pozdrowka,
kacper
Go to the top of the page
+Quote Post

Posty w temacie


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: 8.10.2025 - 18:02