Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]lista rozwijalna + formularz
Forum PHP.pl > Forum > Przedszkole
bubu7
Witam. Mam dwa pliki z kodem, który umozliwia wybrabie danej osoby w zależności od tego kto jest zalogowany. Potrzbuje teraz, żeby po naciśnieciu przycisku "wybierz" otworzyło mi odpowiednią strone , w której będe miał foemularz dotyczący wybranej osoby. Nie wiem właśnie jak to zrobic. Proszę o podpowiedź.
  1. <form action="./dsa_mierniki" method="get">
  2.   <input type="hidden" name="send" value="1" />
  3.  <fieldset>
  4.   <legend>KOORDYNATORZY SPRZEDAŻY AKTYWNEJ</legend>
  5.   <br>
  6. <table id="Table">
  7.  
  8.  
  9.  <tr>
  10.   <td><p style="color: blue; "><b>KSA</b></p> </td>
  11.   <?php
  12.    include('./includes/dsa_mierniki.php');      
  13.   ?>
  14.  </tr>
  15.  
  16.  <tr>
  17.   <td><input type=submit name=accepted value='Wybierz'></td>
  18.  </tr>
  19. </table>
  20. <br>
  21. </form>


  1. <td class="select">    
  2. <select name=dsa size=1>
  3. <?php
  4.  
  5. $ksa = $_SESSION['user']['name'];
  6. mysql_connect('localhost', 'root', '');
  7. mysql_select_db('raporty');
  8. if ($zmienna<>'')
  9.  echo "<option value=\"".$zmienna."\">$zmienna</option>";
  10. else
  11.  echo "<option> -- Nie wybrano -- </option>";
  12. $result = mysql_query("SELECT * FROM tab_ksa k
  13.  Inner JOIN uzytkownicy u ON u.id_ksa = k.iddsa
  14. where u.login='$ksa' ;");
  15. $ilew = mysql_num_rows($result);
  16.  
  17. for ($i=0; $i<$ilew; $i++){
  18.  $wiersz = mysql_fetch_row($result);
  19.  echo "<option value=\"".$wiersz[1]."\" >";
  20.        echo $wiersz[1];
  21.        echo "</option>";                                          
  22.  } // for
  23. mysql_close('localhost', 'root', '');
  24. ?>
  25. </select>
  26. </td>
Pilsener
1. Sprawdzasz, czy została wykonana akcja wyboru użytkownika, jeśli tak to:
2. Odbierasz ID usera z tego selecta
3. Podstawiasz to ID do zapytania i pobierasz z bazy informacje o tym użytkowniku
4. Wczytujesz te informacje do formularza

Przy okazji inne uwagi:
- dbaj o poprawny kod html
- wybór użytkownika z pola select to kiepski pomysł, lepsza jest porcjowana lista + wyszukiwarka, tak jak masz np. na forum
- rekordy z bazy możesz wyświetlić dużo prościej:
  1. <?php
  2. $result = mysql_query("SELECT * FROM tab_ksa k
  3. Inner JOIN uzytkownicy u ON u.id_ksa = k.iddsa
  4. where u.login='$ksa' ;"); //po co ten średnik w zapytaniu?
  5. while($wiersz = mysql_fetch_row($result)){
  6.   echo $wiersz[1];
  7. }
  8. ?>

- stringi dawaj w ' a nie w " - tak jest czytelniej i wygodniej
- operuj na zmiennych, a nie używasz n razy funkcji echo - do przeglądarki należy wysłać już przygotowaną stronę, zmienne zawsze usunąć albo nadpisać, jest to wydajniejsze i wygodniejsze niż drukowanie po kawałku na ekranie.
bubu7
Dzięki za wskazówki. Postaram się do nich zastosować:). No właśnie nie wiem jak odebrać id usera z tego selecta. I w którym miejscu mam wstawić formularz?
erix
Kurs HTML się kłania. Jest taki atrybut value, poszukaj.
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.