Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> PHP HTML select option
gucio1
post
Post #1





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 30.04.2016

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


Witam,
mam następujący problem.

Mam formularz gdzie wypełnia się kilka danych inputami a ostatnią opcję wybiera się z listy selected.
Każdy input ma walidacje i zapamiętuje co było wybrane w razie błędów przy wpisywaniu.
Chciałbym żeby select też zapamiętywało wybór.
Dane do select podciągnięte są z bazy i ich liczba stale rośnie.

Normalnie zapisuje wszystkie podane hasła w inputach do zmiennych sesyjnych a potem je wyświetlam w zależności od tego czy istnieją.
Jak to wygląda w wypadku select? wiem że jest opcja "selected" w optionie ale nie wiem, musiał bym sprawdzać warunkiem co było wybrane i potem w zależności dopisywać do którejś z opcji "selected"?

Jest na to jakiś prosty sposób?

Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
gucio1
post
Post #2





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 30.04.2016

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


Mam coś takiego:

Pobieram wzystkich użytkowników z bazy
  1.  
  2. $pobierz = $polaczenie->query("SELECT * FROM uzytkownicy WHERE user='1' ORDER BY nazwisko ASC ");
  3.  
  4. echo '<select name="osobaAdmin" class="form-control">';
  5. while ($row = $pobierz->fetch_assoc()) {
  6. $nazwa = $row['nazwisko'] .' '.$row['imie'];
  7. $zapis = '<option>' . $nazwa. '</option>';
  8.  
  9. echo $zapis;
  10. }
  11. echo '</select>';
  12.  


  1.  
  2. $pobierz = $polaczenie->query("SELECT * FROM uzytkownicy WHERE user='1' ORDER BY nazwisko ASC ");
  3.  
  4.  
  5. echo '<select name="osobaAdmin" class="form-control">';
  6. while ($row = $pobierz->fetch_assoc()) {
  7. $nazwa = $row['nazwisko'] .' '.$row['imie'];
  8. $zapis = '<option>' . $nazwa. '</option>';
  9.  
  10. if (isset($_SESSION['fr_osobaAdmin'])) {
  11. $zapis = '<option>'.$_SESSION['fr_osobaAdmin'].'</option>';
  12. unset($_SESSION['fr_osobaAdmin']);
  13. }
  14.  
  15.  
  16. echo $zapis;
  17. }
  18. echo '</select>';
  19.  



Działa bez selected. Czy to jest w porządku?

Jednak nie działa tak jak powinno.
Po pierwsze na 1 miejsce na liście wskakuje mi to co było wybrane przed wysłaniem formularza a potem jest też do wyboru jeszcze raz na swoim miejscu.
Po drugie nie usuwa mi zmiennej sesyjnej.
Po trzecie po wysłaniu formularza nie ma wszystkich opcji do wyboru które powinny być.
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: 11.10.2025 - 02:26