Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][MySQL][PHP]dropdown lista z pierwszą wartością do edycji
jobp33
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 30.11.2015

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


Witam serdecznie

Załóżmy że robię do pewnej podstrony dropdownlist która standardowo wyświetla wartości z konkretnej kolumny tabeli. Następnie chciałbym aby edytując pewne wartości formularza (między innymi jedna wartość wybierana z dropdownlist) aby drop down lista zaczynała się najpierw od tej wartości która jest zaznaczona w formularzu. Np formularz kupna samochodu, z dropdownlist wybieram kolor zielony i potem przy edycji tego formularza lista się zaczyna od tego koloru (domyślnie lista pierwszą wartość ma "wybierz kolor"). Mam nadzieję że za mocno nie nagmatwałem.biggrin.gif
Go to the top of the page
+Quote Post
Fred1485
post
Post #2





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

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


http://www.w3schools.com/tags/att_option_selected.asp

W bazie masz zapisane dane, m.in. kolor. Nie wiem czy w bazie masz np. listę wszystkich dostępnych kolorów. Jeśli tak to po prostu ją pobierasz, jeśli nie masz takiego czegoś to zrobiłbym tablicę z dostępnymi wartościami. Potem w pętli tworzyłbym selecta i sprawdzałbym czy kolor równa się kolorowi z bazy. Jeśli tak to dodawałbym selected i tyle. Być może coś lepszego dałoby się wymyślić wink.gif

Ten post edytował Fred1485 29.12.2015, 18:59:24


--------------------
  1. echo 'I was trying';
  2. die ();
Go to the top of the page
+Quote Post
jobp33
post
Post #3





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 30.11.2015

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


  1. <td>Kolor</td>
  2. <td> <select name="wydzial">
  3. <?php
  4. $polaczenie = @new mysqli($host, $db_user, $db_password, $db_name);
  5. if($polaczenie->connect_errno!=0){
  6. echo"Error:".$polaczenie->connect_errno;
  7. }else{
  8. $lista = "SELECT kolor FROM parametry";
  9. $wynik=@$polaczenie->query($lista);
  10. $rows=$wynik->num_rows;
  11. while ( $rekordy=$wynik->fetch_assoc()){
  12. $kolor=$rekordy['kolor'];
  13.  
  14. echo "<option value=\"$kolor\">$kolor</option>";
  15. }
  16. echo '<option value="" selected="selected"></option>';
  17. }
  18. ?>
  19. </select>

To jest to co mówiłem że mam. I coś gdzieś wypatrzyłem że kolory z tej listy należy porównać z wartością danej zmiennej. Czy do tego muszę tu zrobić dodatkowe zapytanie SQL? Niby sprawa prosta a jednak już się trochę mi namieszało
Go to the top of the page
+Quote Post
maryaan
post
Post #4





Grupa: Zarejestrowani
Postów: 380
Pomógł: 2
Dołączył: 5.01.2007

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


W zasadzie wszystko już masz. Jeśli chcesz edytować wprowadzone dane to zapewne pobierasz z bazy zapisany "obiekt", w którym masz id wybranego koloru. Teraz wystarczy przy generowaniu formularza edycji (kod, który podałeś) porównywać po kolei dodawane opcje koloru z tą, która jest zapisana w edytowanym obiekcie.


--------------------
Wybierasz się do Zakopanego? Odwiedź Willę Pod Górami. Następnym razem na pewno do niej wrócisz :)
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:08