Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Bing-Content removal tool

Nu pot accesa monitorulsv.ro de l...

Cum sa elimini urmele de acnee?

Wc Geberit
 Routere detinute in trecut si in ...

Teii din fața casei

E-Mail in serie prin Excel si Out...

Modul alimentare rulou/jaluzea ex...
 Recuperare fișiere dupa form...

Aplicatii stress test RAM

Asigurare auto hibrid

Asus B550M - PC-ul nu porneste di...
 Tzanca Uraganu - Inconjurat de Fe...

explicatie montaj breadboard

3 Doors Down - Kryptonite

Semnalizati cand virati pe un dru...
 

checkbox tree ( js + css + php )

- - - - -
  • Please log in to reply
5 replies to this topic

#1
szerky

szerky

    Member

  • Grup: Members
  • Posts: 265
  • Înscris: 10.07.2008
Am o intrebare legata de CSS si JS & PHP .

Sa zicem ca am un array bidimensional in PHP ce contine toate categoriile si subcategoriile din MySQL .

Pt. a imi da seama ce fel de subcategorie este folosesc un camp level_id care functioneaza pe principiul asta :
1 = categorie , 2 =subcategorie , 3= sub subcategorie ..

Toate astea le-am stocate intr`un array si le trimit in TPL printr-un assign .

Acum ma gandesc ca trebuie sa folosesc o tehnologie client side adica JS .

Ce vreau sa fac ?

In prima instanta din TPL sa afisez doar categoriile cu LEVEL 1 . Iar toate categoriile care contin subcategorii sa le pun un Icon in dreapta astfel incat atunci cand userul da click pe acel icon sa afiseze imediat urmatorul LEVEL .

Adica daca a dat click pe o categorie cu LEVEL 1 si ea contine subcategorii atunci din CSS sa apara un drop down ce contine subcategoriile lui LEVEL 1 adica superior Smile .


Are cineva idee cum as putea face asta in JS ?

Ma intereseaza doar ideea Smile

#2
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Senior Members
  • Posts: 27,268
  • Înscris: 10.08.2006

View Postszerky, on Sep 13 2008, 10:06, said:

Pt. a imi da seama ce fel de subcategorie este folosesc un camp level_id care functioneaza pe principiul asta :
1 = categorie , 2 =subcategorie , 3= sub subcategorie .
Eu as zice sa normalizezi tabelul respectiv inainte de toate. Pt structuri de date ierarhice ai nevoie de "id" si "parent_id", caci cu "level_id" (presupun ca aici salvai nivelul de "indentare" nu prea ai ce face) exista inconsistente. Scoti intregul arbore de date din db si il salvezi intr-un arbore recursiv (cu array-uri) care sa reflecte exact structura ta ierarhica. Cu functiile php pt json poti apoi exporta usor acea structura in format obiect inteles de javascript.

#3
szerky

szerky

    Member

  • Grup: Members
  • Posts: 265
  • Înscris: 10.07.2008
Pt. structura ierarhica am 3 campuri : left_id , right_id si level_id .

folosesc metoda asta : http://www.sitepoint...data-database/2

in smarty am un foreach la arrayul bidimensional scos din DB :

[{foreach key=key item=categz from=$tcategs}]

.....


Iar JSON din pacate nu am pe hosting , am PHP 4.3.11.

Edited by szerky, 13 September 2008 - 10:37.


#4
MembruAnonim

MembruAnonim

    MembruAnonim

  • Grup: Banned
  • Posts: 398,226
  • Înscris: 08.10.2015

Quote

Iar JSON din pacate nu am pe hosting , am PHP 4.3.11.
JSON este, așa și cum îi spune și numele (javascript bla bla bla) client side. Este echivalent cu a spune că nu ai flash sau xml instalat pe server ... ;)
Pe scurt, pe partea de server (php sau orice altceva) tu generezi un fișier care în final va avea o sintaxă corectă JSON

Ce vrei tu să faci, este destul de simplu: generezi o listă cu toate elementele iar fiecare subcategorie o bagi într-un alt element din listă. Ceva de genul:
<ul>
 <li>categorie
  <ul>
   <li>Subcategorie</li>
  </ul>
 </li>
 <li>categorie</li>
 <li>categorie
  <ul>
   <li>Subcategorie</li>
  </ul>
 </li>

(NU am uitat niciun tag la liste, așa că ai grijă!). După ce faci asta, cu orice librărie poți manipula foarte ușor listele astea. Din css faci ceva de genul:

ul ul {
display:none
}

Iar din javascript... cred că te descurci :)

#5
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Senior Members
  • Posts: 27,268
  • Înscris: 10.08.2006

View Posti0nutzb, on Sep 14 2008, 23:56, said:

JSON este, așa și cum îi spune și numele (javascript bla bla bla) client side. Este echivalent cu a spune că nu ai flash sau xml instalat pe server ... ;)
Era vorba de http://php.net/manua.../json.setup.php

#6
xnoise

xnoise

    Active Member

  • Grup: Members
  • Posts: 1,310
  • Înscris: 08.02.2007
cred totusi ca cel mai simplu, bazat pe legatura parinte-copil, este sa asignezi markere. un exemplu destuld e simplu este meniul de pe paginile de pe www.1001case.ro. Acolose foloseste proprietatea rel ca marker impreuna cu clase pe copii directi. se poate merge mult mai departe si este o structura extrem de customizabila.

Avantajele unei clase ca marker sunt destul de semnificative.

1: Nu ai nevoie de liste suplimentare pt simplul motiv ca nu isi au rostul. Poti construi foarte usor marcajele vizuale bazandu-te pe clasa copiilor.
2: este destul de rapid (de evitat documente excesiv de lungi pt ca se foloseste clasa ca marker, astfel incat trebuie parsat tot domul in cautarea elementelor care trebuiesc deschise).

Mult succes.

Anunturi

Bun venit pe Forumul Softpedia!

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate