Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Sortowanie tablic
Oklejek
post 11.11.2015, 23:14:31
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 30.01.2012

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


Witam, mam sobie taki kod
  1. $menu1 = mysql_query("SELECT * FROM `shopmenu` WHERE `owner` = 0");
  2.  
  3. echo '<ol id="shopmenu">';
  4. while($t = mysql_fetch_array($menu1)) {
  5. $menu2 = mysql_query("SELECT * FROM `shopmenu` WHERE `owner` = ".$t['id']);
  6. if(mysql_num_rows($menu2) > 0) $dol = ' class="dol"'; else $dol = '';
  7. echo '<li'.$dol.' onclick=wczytaj(\'div#content2\',\'include/oferty.php?id='.$t['id'].'\')><a>'.$t['nazwa'].'</a><ul>';
  8. echo '<li class="de">'.$t['opis'].'</li>';
  9. if(mysql_num_rows($menu2) > 0) {
  10. while($g = mysql_fetch_array($menu2)) {
  11. $menu3 = mysql_query("SELECT * FROM `shopmenu` WHERE `owner` = ".$g['id']);
  12. if(mysql_num_rows($menu3) > 0) {
  13. $prawo = ' class="dol"';
  14. $ol = '<ol>';
  15. } else {
  16. $prawo = '';
  17. $ol = '';
  18. }
  19. echo '<li'.$prawo.' onclick=wczytaj(\'div#content2\',\'include/oferty.php?id='.$g['id'].'\')><a>'.$g['nazwa'].'</a>'.$ol;
  20. if(mysql_num_rows($menu3) > 0) {
  21. while($h = mysql_fetch_array($menu3)) {
  22. echo '<li onclick=wczytaj(\'div#content2\',\'include/oferty.php?id='.$h['id'].'\')><a>'.$h['nazwa'].'</a></li>';
  23. }
  24. echo '</ol>';
  25. }
  26. }
  27. }
  28. echo '</ul></li>';
  29. }
  30. echo '</ol>';

Wykonuje się tu bez sesnu kilkadziesiąt zapytań do sql, bo menu jest 3-poziomowe. Mniemam, że jest możliwe posegregowanie tego wszystkiego za pomocą tablic zmiennych, tylko kompletnie nie wiem jak sie za to zabrac. Mógłby mi ktoś pomóc?
Go to the top of the page
+Quote Post
nospor
post 12.11.2015, 11:27:16
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Alc... przy takiej strukturze nic madrego sie nie da wymyslic. Musisz pobrac wszystkie rekordy do tablicy php a potem rekurencyjnie je obrabiac.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

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 Wersja Lo-Fi Aktualny czas: 12.06.2025 - 20:15