Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Elementy menu pobierane z bazy danych [PHP]
oYeK
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 30.05.2012
Skąd: Śląsk

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


Witam wszystkich (IMG:style_emoticons/default/smile.gif)

Od razu zaznaczam, że jestem nowy na forum oraz stawiam pierwsze kroki w php i mysql.

Postanowiłem, że będę się uczyć programowania php tworząc stronę, tylko tyle, że chyba za bardzo ambitnie podszedłem do tworzonej strony ;p i pojawił się mały problem z wykonaniem menu na owej stronie.

Sprawa wygląda następująco: chciał bym stworzyć menu nawigacji, którego elementy listy rozwijalnej będą pobierane z bazy danych i zapisywane jako osobne elementy <li></li>. Na razie posiadam napisany kod oraz bazę, w której znajdują się 3 elementy. Kod pobiera mi elementy zapisane w bazie i wypisuje je, ale jako jeden element <li></li> a chciał bym żeby wypisał mi 3 elementy <li></li> i tutaj pojawia się mój problem...

O to kod:
  1.  
  2. <?php
  3. $db = mysqli_connect('localhost', 'user', 'haslo', 'baza');
  4.  
  5. if (mysqli_connect_errno())
  6. {
  7. echo 'Bła połączenia z bazą danych';
  8. }
  9.  
  10. $zapytanie ='SELECT stanowisko FROM praca';
  11. $wynik = mysqli_query($db, $zapytanie);
  12.  
  13. $ile = mysqli_num_rows($wynik);
  14.  
  15. $i = 0;
  16. while ($i<$ile)
  17. {
  18. $wiersz = mysqli_fetch_assoc($wynik);
  19. echo '<a href=""><li>'.($wiersz['stanowisko']).'</li></a>';
  20. $i += 1;
  21. }
  22.  
  23. mysqli_close($db);
  24. ?>


Tak wygląda tabela w bazie danych:

ID stanowisko

1 stanowisko1
2 stanowisko2
3 stanowisko3

Mam teraz do Was takie pytanie jak mogę to rozwiązać żeby działało tak jak bym chciał, tzn żeby tworzyło mi menu. Zaznaczam, że ilość pozycji w menu będzie różna a nie stała.

Z góry dzięki za pomoc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
oYeK
post
Post #2





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 30.05.2012
Skąd: Śląsk

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


Tak wygląda kod z menu:

  1.  
  2. <?php
  3. $db = mysqli_connect('localhost', 'user', 'hasło', 'baza');
  4.  
  5. if (mysqli_connect_errno())
  6. {
  7. echo 'Bła połączenia z bazą danych';
  8. }
  9.  
  10. $zapytanie ='SELECT * FROM praca';
  11. $wynik = mysqli_query($db, $zapytanie);
  12.  
  13. while ($wiersz = mysqli_fetch_assoc($wynik))
  14. {
  15. echo '<li><a href="index.php?stanowisko='.$wiersz['stanowisko'].'">'.($wiersz['stanowisko']).'</a></li>';
  16. }
  17.  
  18. mysqli_close($db);
  19. ?>


A to jest kod, który wywołuje dane z tego samego wiersza co dane "stanowisko":

  1.  
  2. <?php
  3. $db = mysqli_connect('localhost', 'user', 'hasło', 'baza');
  4.  
  5. if (mysqli_connect_errno())
  6. {
  7. echo 'Bła połączenia z bazą danych';
  8. }
  9.  
  10. $zapytanie ='SELECT * FROM praca WHERE stanowisko = ".$_GET["stanowisko"]."';
  11. $wynik = mysqli_query($db, $zapytanie);
  12.  
  13. while ($wiersz = mysqli_fetch_assoc($wynik))
  14. {
  15. echo ($wiersz['oczekiwania']);
  16. }
  17.  
  18. mysqli_close($db);
  19. ?>


Postanowiłem, że przedstawię Wam co chciał bym mniej więcej stworzyć ponieważ chciał bym Was prosić o jakieś porady jak to zrobić. Siedzę cały czas szukając jakieś informacji na necie i coś próbuję stworzyć ale mi nie wychodzi. Po prostu kompletny brak pomysłu...

Tutaj jest zdjęcie jak ma to działać:

(IMG:http://images35.fotosik.pl/1422/55fb9f279e8f32d4m.jpg)

A teraz opis: Górne menu ma działać na zasadzie rozwijalnej listy gdzie będą znajdować się konkretne stanowiska pobierane z bazy danych. To udało mi się stworzyć, działa tak:
  1. <?php
  2. $db = mysqli_connect('localhost', 'user', 'hasło', 'baza');
  3.  
  4. if (mysqli_connect_errno())
  5. {
  6. echo 'Bład połączenia z bazą danych';
  7. }
  8.  
  9. $zapytanie ='SELECT * FROM praca';
  10. $wynik = mysqli_query($db, $zapytanie);
  11.  
  12. while ($wiersz = mysqli_fetch_assoc($wynik))
  13. {
  14. echo '<li><a href="">'.($wiersz['ofertaID']).'</a></li>';
  15. }
  16.  
  17. mysqli_close($db);
  18. ?>


Po wybraniu odpowiedniego stanowiska chciał bym aby informacje odnośnie tego wybranego stanowiska, które znajdują się w tej samej tabeli były
możliwe do wyświetlenia po wybraniu odpowiedniego menu z lewej strony i wyświetlone z prawej strony. I tutaj pojawia się mój problem bo nie mam bladego pomysłu jak można to wykonać w tej sposób. Kombinuje już dwa dni i nic mi nie wychodzi ;/

Może ktoś z Was mi podpowie jak to wykonać ?



I jak podpowie może ktoś jakieś rozwiązanie (IMG:style_emoticons/default/questionmark.gif)

Ten post edytował oYeK 1.06.2012, 13:57:46
Go to the top of the page
+Quote Post

Posty w temacie


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: 3.10.2025 - 14:20