Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MYSQL] Pomoc z listą rozwijaną
koks1429
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 28.03.2010

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


Witam, mam problem z moją listą rozwijaną, którą chcę umieścić w formularzu.

Lista ma zawierać rekordy pobrane z bazy danych, z tabeli user z pola Kto.
Oto co mam:

  1. Kto: <select name="kto">
  2.  
  3. </option><?php
  4. require 'conn.php';
  5. $result = mysql_query("SELECT * FROM `user` WHERE `Kto` ");
  6. ?></option>
  7. </select>



Jest to zapewne źle, gdyż mam listę rozwijaną ale nie ma w niej nic do wyboru.
Prawdopodobnie muszę wykorzystać http://www.php.net/manual/pl/function.mysql-fetch-array.php
Ale nie wiem jak to zrobić. Mógłby mnie ktoś naprowadzić jak to rozwiązać?

I czy kod mam umieścić między znacznikami <option></option> czy można jakoś zrobić aby było to samo generowane w zależności od ilości rekordów w tabeli
Go to the top of the page
+Quote Post
Snap
post
Post #2





Grupa: Zarejestrowani
Postów: 75
Pomógł: 4
Dołączył: 29.05.2005

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


Dobrze myślisz, musisz wykonać operacje na otrzymanym wyniku z bazy ( u Ciebie $result ) na przykład za pomocą mysql_fetch_assoc.
Następnie na tablicy otrzymanej z mysql_fetch_assoc zrobić pętle, przelecieć po wszystkich elementach tablicy wyświetlając je.

W tej pętli powinieneś umieścić i "wyechować" kod html ( http://www.w3schools.com/tags/tag_option.asp ) odpowiadający za wyświetlania elementu w liście rozwijanej. Wszystko co zwróci pętla powinno znajdować się pomiędzy kodem html ( http://www.w3schools.com/tags/tag_select.asp ), który tworzy rozwijaną listę.
Go to the top of the page
+Quote Post
Kshyhoo
post
Post #3





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Zobacz przykład:
  1. <?php
  2. echo '<select name="ktoed" class="textbox" style="width:150px;">
  3. <option value=""> Kto może edytować </option>';
  4. $zapytanie = "SELECT * FROM logowanie";
  5. $wynik = mysql_query($zapytanie);
  6. while ($dane = mysql_fetch_array($wynik)) {
  7. $login = $dane['login'];
  8. $id_log_k = $dane['id_log'];
  9. if ($id_log == $id_log_k)
  10. echo '<option value='.$id_log_k.' selected>'.$login.'</option>';
  11. else
  12. echo '<option value='.$id_log_k.'>'.$login.'</option>';
  13. }
  14. echo '</select>';
  15. ?>
Go to the top of the page
+Quote Post
Danielcom
post
Post #4





Grupa: Zarejestrowani
Postów: 92
Pomógł: 3
Dołączył: 6.10.2008

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


Zainteresuj się tą funkcją, jest gotowa, wystarczy ją tylko trochę dostosować.
Więcej szczegółów szukaj w google pod hasłem PDO (bardzo polecam)
  1. <?php
  2.  
  3. function user(){
  4. try{
  5. include ("./configuration.php");
  6. $pdo = new PDO('mysql:host='.$mosConfig_host.';dbname='.$mosConfig_db.'', ''.$mosConfig_user.'', ''.$mosConfig_password.'');
  7. $pdo -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  8. echo '<option id="0" value="0">-- nie wybrano --</option>r';
  9. foreach($pdo -> query('SELECT * FROM user') as $user){
  10. echo "<option value=\"".$user['id']. "\">";
  11. echo $user['nazwa'];
  12. echo "</option>";
  13.  
  14. }
  15. } catch (PDOException $e) {
  16. echo 'Jeśli widzisz ten komunikat powiadom administratora.';
  17. }
  18. }
  19. ?>


Przykład jej odpalenia
  1. <select name="id_user">
  2. <?php echo user(); ?>
  3. </select>

Go to the top of the page
+Quote Post

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: 23.12.2025 - 13:07