Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Select, wybranie opcji po wczytaniu...
Forum PHP.pl > Forum > Przedszkole
Wieviór
  1. <tr><td>Kategoria: <select size="1" name="kategoria">
  2. <option value="aktualnosci">Aktualności</option>
  3. <option value="klub">Klub</option>
  4. <option value="ligamistrzow">Liga Mistrzów</option>
  5. <option value="dlakibicow">Dla kibiców</option>
  6. <option value="stopka">Stopka</option>
  7. </select></td></tr>


I teraz to ma się pokazać razem z innymi polami <form> przy edytowaniu czegos. Są też pola tytuł i treść. I jak edytuje to w te pola automatycznie wpisują się dane, wyczytane wczesniej z bazy. Teraz chcę by wyczytać jaka jest kategoria i w zależności od tego jaka jest, wybrać daną opcję.

Myślałem nad tym by każde
  1. <option value="tekst">Tekst</option>

zamienić na:
  1. <option <? if ($pobranedanezbazy['kategoria'] == 'tekst') { echo 'selected'; } ?> value=\"tekst\">Tekst</option>


Ale to mało kodooszczędne i poza tym co będzie gdy będzie 100 opcji do wyboru...? Nie chcę też robić tabeli w bazie danych z kategoriami...

Ma ktoś lepszy, krótszy pomysł?
legorek
Przerób to sobie:


  1. <?php
  2.  
  3. function TworzSelecta($kategoria=1)
  4. {  
  5. $kat_select = &#092;"<select name=\"temat_kategoria\" size=\"1\"><br>\";
  6. $db = ADONewConnection('mysql');
  7. $db->SetFetchMode(ADODB_FETCH_ASSOC);
  8. $db->connect(host,user,haslo,baza);
  9. $wynikKategorie = $db->Execute(&#092;"SELECT id FROM forum_kategorie ORDER BY kolejnosc ASC;\");
  10. while (!$wynikKategorie->EOF)
  11. {
  12. if ($wynikKategorie->fields['id']== $kategoria
  13. {
  14. $kat_select .= &#092;"<option value=\"\".$wynikKategorie->fields['id'].\"\" selected>\".$wynikKategorie->fields['opis'].\"</option>\";
  15. }
  16. else
  17. {
  18. $kat_select .= &#092;"<option value=\"\".$wynikKategorie->fields['id'].\"\">\".$wynikKategorie->fields['opis'].\"</option>\";
  19. }
  20. $wynikKategorie->MoveNext();
  21. }
  22. $kat_select .= &#092;"</select><BR>\";
  23. return $kat_select;
  24. }
  25.  
  26. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.