Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Znajdowanie drogi grup forum.
nekomata
post
Post #1





Grupa: Zarejestrowani
Postów: 314
Pomógł: 44
Dołączył: 12.11.2010
Skąd: UK

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


Witam , pisze sobie właśnie cms'a i mam taki problemik a mianowicie celem jest nagłowek strony z nazwami grup ( tak jak tutaj jest w nagłówku forum Forum PHP.pl > Forum > PHP ) napisałem skrypt który działa bezproblemowo .. ale zastanawiam się czy nie da się tego uprościć ponieważ za każdym odświeżeniem strony dochodziłaby liczba zapytań... opiszę teraz działanie skryptu :
tabela z grupami wygląda mniej więcej tak (wywalilem z tabeli wszystkie zbędne kolumny które nie mają związku z tematem..):
Kod

id |   name   | under_group
---+-----------+-------------------
1 |  Rules    | 0
---+-----------+-------------------
2 | Rules 2  | 1
---+-----------+-------------------
3 | Rules 3   | 2

a kod php wygląda tak :
  1. function find_path_upwards($id,$dbc,$base){
  2. $clear = array();
  3. $finder = $dbc->prepare('SELECT name,under_group FROM forum_groups WHERE id = ?');
  4. $finder-> execute(array($id));
  5. $finderx = $finder->fetch(PDO::FETCH_ASSOC);
  6. $clear[] = $finderx['name'];
  7. if($finderx['under_group']!==0){
  8. $under = $finderx['under_group'];
  9. $flag = false;
  10. while(!$flag){
  11. $finder -> execute(array($under));
  12. $finderz = $finder->fetch(PDO::FETCH_ASSOC);
  13. $clear[] = $finderz['name'];
  14. $under = $finderz['under_group'];
  15. if($finderz['under_group']==0){
  16. $flag = true;
  17. }
  18. }
  19. }
  20. $clear = array_reverse($clear);
  21. foreach($clear as $link){
  22. echo ' > <a href="'.$base.'forum/'.$link.'/">'.$link.'</a>';
  23. }
  24. return ob_get_clean();
  25. }
$dbc to jest link do klasy PDO jak można się domyśleć ... cały skrypt działa bezproblemowo niema błędów itd .. tylko zastanawiam się czy nie można uprościć całego działania.. jakieś pomysły?Z góry dzięki.
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: 2.10.2025 - 22:32