Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MYSQL]Wyświetlanie kategorii w liście rozwijanej, pomoc przy skończeniu skryptu
Czapla
post
Post #1





Grupa: Zarejestrowani
Postów: 130
Pomógł: 3
Dołączył: 10.12.2007
Skąd: Bielsko-Biała

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


Chodzi oto aby wyświetlić wszystkie kategorie z tabeli przy_kategorie w liście rozwijanej dla danego rekordu z zaznaczeniem wybranej opcji w liście rozwijanej. Oto zapytanie które realizuje te założenia:

  1. SELECT pk.id_kategoria AS id_k, kategoria, pd.id_dokument, pd.id_kategoria AS id_k_check
  2. FROM przy_kategorie pk
  3. LEFT JOIN przy_dokumenty pd ON ( pk.id_kategoria = pd.id_kategoria AND pd.id_dokument = $ID_DOKUMNET )




Lista ladnie się wyświetla tylko że zawsze zaznacza pierwszą opcję z góry, zamist wybranej.

Kod do generowania formularza jest taki
  1. <?php
  2. do{
  3.  $lista .= '<option value="'.$aDBC->FieldByName ("id_k") .'">'.$aDBC->FieldByName ("kategoria") .'</option>';  
  4. }while ($aDBC->Next());
  5. echo '<select name="kategoria">'.$lista.'</select>';
  6. ?>


Ten post edytował Czapla 28.08.2008, 08:20:05


--------------------
Life is a game, continue playing and try to be a pr0.
Go to the top of the page
+Quote Post
Pitter
post
Post #2





Grupa: Zarejestrowani
Postów: 75
Pomógł: 8
Dołączył: 9.08.2008

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


Jeżeli z góry ustalasz sobie która z kategorii ma być zaznaczona to zrób coś takiego

  1. <?php
  2. do{
  3. if($aDBC->FieldByName ("kategoria")=='Kategoria jakaś tam')
  4. {
  5.  $lista .= '<option value="'.$aDBC->FieldByName ("id_k") .'" selected>'.$aDBC->FieldByName ("kategoria") .'</option>';  
  6. } 
  7. else
  8. {
  9. $lista .= '<option value="'.$aDBC->FieldByName ("id_k") .'">'.$aDBC->FieldByName ("kategoria") .'</option>';
  10. }
  11.  }while ($aDBC->Next());
  12. echo '<select name="kategoria">'.$lista.'</select>';
  13. ?>


Ten post edytował Pitter 28.08.2008, 10:45:57
Go to the top of the page
+Quote Post
Czapla
post
Post #3





Grupa: Zarejestrowani
Postów: 130
Pomógł: 3
Dołączył: 10.12.2007
Skąd: Bielsko-Biała

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


Właśnie tego selected mi brakowało!

Prawidlowy kod, zostawiam dla potomnych, może się przyda:

  1. <?php
  2. echo '<select name="kategoria">';
  3.  do {
  4.  print ('<option value='.$aDBC->FieldByName ("id_kategoria") .' name=opcja'.$aDBC->FieldByName ("id_kategoria").'');
  5.  if ($aDBC->FieldByName ('id_kategoria') == $aDBC->FieldByName ('id_kategoria_check'))
  6. print (" selected ");
  7.  print (">");
  8.  print ($aDBC->FieldByName ('kategoria'));
  9.  print ('</option>');
  10. } while ($aDBC->Next());
  11. echo '</select>';
  12. ?>


Pozdrawiam

Ten post edytował Czapla 28.08.2008, 11:57:36


--------------------
Life is a game, continue playing and try to be a pr0.
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 Aktualny czas: 21.08.2025 - 09:17