Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][CSS][PHP] Temat drzewek, Mam gotowy skrypt tylko jak go udoskonalić?
marcin_qu
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 17.07.2007

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


Generalnie chodzi o to aby jakoś skrypt drzewek połączyć z jquery, żeby wyświetlał tylko rodzica i po kliku na kategorię rozwijał się dalej.'
Drugie pytanie dotyczy w jaki sposób zrobić aby nowo stworzona kategoria była już podlinkowana po ID czyli np.:"blablabla.php?dzial=samochody&subcat=ciezarowe&id=34"
Trzecie pytanie jak zliczyć z tego skrypyu ilość znajdujących się wewnatrz danej podkategorii np. zdjęć

Oto link do paczki: LINK

a to link do stronki stronka

Z góry dzięki za pomoc w rozwiązaniu chociaż jednego z w/w problemu. Pozdrawiam

Ps. Tak przy okazji to skrypt na pewno się komuś przyda...
Go to the top of the page
+Quote Post
Dapi
post
Post #2





Grupa: Zarejestrowani
Postów: 186
Pomógł: 13
Dołączył: 7.08.2009

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


Nie pobieram paczki, ale postaram się pomóc.

Co do pierwszego pytania to ja bym kombinował z css'owym display: none/block
oraz kodem
Kod
<script type="text/javascript">
           function zwin(co){
            var obiekt = document.getElementById(co);
            if (obiekt.style.display == 'block') {
               obiekt.style.display = 'none';
            }
           }
</script>

Nie pobieram paczki, więc dokładnie ci nie powiem jak to ma wyglądać,
ale na pewno coś jak pomyślisz wykombinujesz (IMG:style_emoticons/default/smile.gif)


Co do drugiego, to dajesz jak masz np grafikę, albo chcesz podlinkować tekst
<a href="blablabla.php?dzial=samochody&amp;subcat=ciezarowe&amp;id=34">blabla</a>
jak masz dajmy na to diva, to onclick"location.href='blablabla.php?dzial=samochody&subcat=ciezarowe&id=34'"

następnie w blablabla.php dajesz warunek:

  1. if($_GET['dzial'] == 'samochody' & $_GET['subcat'] == ciezarowe){
  2. // wykonywane jeśli nie dzial to samochody
  3. if($_GET['subcat'] == ciezarowe){
  4. // wykonywane jeśli subcat to ciężarowe
  5. if($_GET['id'] != ""){
  6. // wykonywane jeśli id zostało podane
  7. //i tu jeśli dane pochodzą z bazy robisz takie myk:
  8. $id = $_GET['id']; // musisz odpowiednio zabezpieczyć, ale to już znajdziesz w necie ;)
  9. // i pobierając dane z bazy dajesz warunek where `id` = $id (z sql mam problemy, ale coś w ten deseń (IMG:style_emoticons/default/tongue.gif) )
  10.  
  11. // ewentualnie jeśli dane nie pochodzą z bazy to robisz zamiast $_GET['id'] !=""
  12. // takie cóś: $_GET['id'] == "1" i lecisz po kolei
  13. }else{
  14. // wykonywane jeśli id nie zostało podane :)
  15. }
  16. }else{
  17. // wykonywane jeśli subcat nie został podany :)
  18. }
  19. }elseif($_GET['dzial'] == 'rowery'){
  20. // wykonywane jeśli dzial to rowery
  21. }else{
  22. // wykonywane jeśli dzial nie został podany :)
  23. }




Mam nadzieję, że o to chodziło i się przyda (IMG:style_emoticons/default/smile.gif) Jak coś to pytaj.
Go to the top of the page
+Quote Post
marcin_qu
post
Post #3





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 17.07.2007

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


zaraz będę coś kombinował, ten skrypt strasznie jest namieszany i zanim do czegoś dojdę minął wieki (IMG:style_emoticons/default/tongue.gif) . Dziękuję za wskazówki na pewno się przydadzą!
Go to the top of the page
+Quote Post
zegarek84
post
Post #4





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

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


Cytat(marcin_qu @ 10.09.2010, 11:56:27 ) *
Trzecie pytanie jak zliczyć z tego skrypyu ilość znajdujących się wewnatrz danej podkategorii np. zdjęć
jeśli wszystkie dzieci są tego samego typu [czytaj zdjęcia] to wystarczy po prostu:
liczba_el = (prawy - lewy -1) / 2

jeśli są różnej kategorii to będziesz musiał najpierw pobrać wszystkie elementy [zależy w jakim języku] gdzie dzieci to elementy pasujące do równania:
lewy.rodzica < lewy.dziecka < prawy.rodzica

a następnie w pętli musisz przejrzeć typ dziecka...

zadałeś dosyć ogólnikowe pytania...
Go to the top of the page
+Quote Post
marcin_qu
post
Post #5





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 17.07.2007

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


ok to może na początek wkleję kawałek funkcji odpowiedzialnej za wyświetlanie drzewa:

  1. function nstPrintSubtree ($thandle, $node, $attributes)
  2. /* */
  3. {
  4. $wlk = nstWalkPreorder($thandle, $node);
  5. while ($curr = nstWalkNext($thandle, $wlk)) {
  6. // print indentation
  7. print (str_repeat("&nbsp;", nstWalkLevel($thandle, $wlk)*4));
  8. // print attributes
  9. $att = reset($attributes);
  10. while($att){
  11. // next line is more efficient: print ($att.":".nstWalkAttribute($thandle, $wlk, $att));
  12. print ($wlk['row'][$att]);
  13. $att = next($attributes);
  14. }
  15. print ("<br/>");
  16. }
  17. }


druga finkcja:
  1. function nstPrintTree ($thandle, $attributes)
  2. /* Prints attributes of the entire tree. */
  3. {
  4. nstPrintSubtree ($thandle, nstRoot($thandle), $attributes);
  5. }


no i wywołanie:
  1. <?php
  2. include "nstrees.php";
  3. include "treetest-config.php";
  4. $dbh = mysql_connect($ttest_host, $ttest_user, $ttest_pwd);
  5. if (!mysql_select_db($ttest_db))
  6. echo mysql_errno().": ".mysql_error()."<BR>";
  7. $thandle['table'] = "tree1";
  8. $thandle['lvalname'] = "lft";
  9. $thandle['rvalname'] = "rgt";
  10.  
  11. nstPrintTree($thandle, array("name"));
  12. ?>


Jak to obrobić już prawie cały dzień siedzę i chyba przerasta mnie to....(IMG:style_emoticons/default/sad.gif) Ps. Pierwsze w życiu podejście do tematu drzewek...
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.08.2025 - 02:18