Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [html] [php] select, value uzupelnienie pola
web.admin.pl
post 1.08.2006, 00:22:28
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 25.07.2006

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


witam mam pytanie. kiedy tworze formularz wyboru (liste) i cos z niej wybieram i załózmy zatwierdzam wybór zeby cos sie zrobiło. to po przeładowaniu strony wszystko jest ok tylko ze lista jest nei uzupełniona. probowałem róznie to zrobic no i doszłem tylko do prymitywnego sposobu ze dla kazdego wyboru trzeyba zrobic liste na ktorej wybrana rzecz bedzie pierwsza w kolejnosci. a czy nie dało by rady tego zrobic prosciej? np. tak jak pole tekstowe sie zapamietauje jezeli bylo:

oto przykladowa strona formularz.php
  1. <form action="formularz.php" method=post>
  2. <input name=name type=text >
  3. <input type=submit value=wyslij>
  4. </form>


po kliknieciu przycisku strona sie odswiezy ale pole "name" bedzie juz uzupelnione tą sama wartoscią. i wlasnie tak samo chcialbym zeby z listą było. z tym ze value nie działa... chyba bo moze cos pokręciłem
jak by ktos znal leprzy sposób niz robienie potężnych warunków i do kazdego warunku(wyboru) stworzenie wlasnej listy winksmiley.jpg) no... z góry dzięki... mam nadzieje ze mnie rozumiecie
pozdrawiam
web.admin.pl

Ten post edytował web.admin.pl 1.08.2006, 00:23:11
Go to the top of the page
+Quote Post
TomASS
post 1.08.2006, 00:40:22
Post #2





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


Hej.
(Wartości właściwości muszą być w cudzysłowach).

Mamy formularz (jeśli nie podasz właściwości action - formularz zostanie wysłany do tego samego pliku):
Pole select generowane przy pomocy pętli for tak dla przykładu.
  1. <?php
  2. echo '<form method="POST" name="form1" id="form1">';
  3. echo '<input type="text" name="pole">';
  4. echo '<select name="lista">';
  5. for($i=0;$i<4;$i++) echo '<option value="'.$i.'">'.$i.'</option>';
  6. echo '</select>';
  7. echo '<input type="submit" value="ok">';
  8. echo '</form>';
  9. ?>


Ustawienie pola typu text:
  1. <?php
  2. echo '<input type="text" name="pole" value="'.$_POST['pole'].'">';
  3. ?>


Ustawienie listy:
  1. <?php
  2. for($i=0;$i<4;$i++){
  3.  if($i==$_POST['lista']) echo '<option value="'.$i.'" selected>'.$i.'</option>';
  4.  else echo '<option value="'.$i.'">'.$i.'</option>';
  5. }
  6. ?>



(Mam nadzieję, że nie ma błędu składni, nie mam możliwości sprawdzenia i pisałem z palca)


--------------------
Go to the top of the page
+Quote Post
web.admin.pl
post 1.08.2006, 11:18:19
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 25.07.2006

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


No ok. bardzo dobry przykład tylko ze wg. mnie nie rozwiązuje on problemu. działa jak nalezy ale jezeli w liscie mają byc wyrazy a nie cyfry generowane za pomocą pentli for. moze w takim wypadku użyc bazy mySQL? i zamiast cyferek podac indeksy pol w ktorych były by te wyrazy? czy to moze sie udac? a moze jest inny prostrzy sposób?
Go to the top of the page
+Quote Post
TomASS
post 1.08.2006, 12:19:18
Post #4





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


sprawdź zanim zapytasz smile.gif

Odpowiedź brzmi tak - tak to się właśnie robi smile.gif


--------------------
Go to the top of the page
+Quote Post
-Gość-
post 1.08.2006, 12:30:32
Post #5





Goście







dziękować...
pozdrawiam
web.admin.pl
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: 8.07.2025 - 20:50