Hoofdcategorieën
Topicacties

[PHP/Javascript] EXT javascript array

Pagina: 1

Reageer Nieuw Topic
Berichten: 437
Reg. datum: 05 juni 2001

Ik ben bezig met EXT. Ik probeer met EXT Drag and Drop Reorder:
http://extjs.com/deploy/dev/examples/tree/reorder.html

Ik probeer deze te koppelen in mn CMS. Ik lees de pagina's uit vanuit MySQL dmv. mysql_fetch_assoc en via json_encode() maak ik er een javascript array van.
Dit gaat allemaal prima, maar zodra er een Children in het menu komen gaat het mis.

Het (array) formaat wat ik nodig heb om dit werkend te krijgen is:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
[{
        id: 1,
        text: 'A leaf Node',
        leaf: true
    },{
        id: 2,
        text: 'A folder Node',
        children: [{
            id: 3,
            text: 'A child Node',
            leaf: true
        }]
   }]

Maar het formaat wat ik op dit moment terug krijg van json_encode() is:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
[{
        id: 1,
        text: 'A leaf Node',
        leaf: true
    },{
        id: 2,
        text: 'A folder Node',
        children: {
            id: 3,
            text: 'A child Node',
            leaf: true
        }
   }]

Bij de children gaat het fout, daar mist een [ en ] teken.

Kan iemand mij hier mee helpen? ik kom er niet meer uit na veel ge-google en lezen op ext forum.
 
Berichten: 1.860
Reg. datum: 22 januari 2004

Kun je een dump van het array maken dat je wilt coderen?

Is children wel een array?
PHP:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$a = array('id' => 2'children' => array('id' => 3));

/* JSON:
   {"id":2,
    "children":{"id":3}
   }
*/


$a = array('id' => 2'children' => array(array('id' => 3)));

/* JSON:
   {"id":2,
    "children": [{"id":3}]
   }
*/

?>

Whereas Europeans generally pronounce my name the right way ('Nick-louse Veert'), Americans invariably mangle it into 'Nickel's Worth.' This is to say that Europeans call me by name, but Americans call me by value - Niklaus Wirth

Berichten: 437
Reg. datum: 05 juni 2001

Hierbij de array dump:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Array
(
    [0] => Array
        (
            [leaf] => 
            [cls] => folder
            [text] => Over ons
            [id] => 
            [children] => Array
                (
                    [id] => 
                    [cls] => file
                    [text] => Wie zijn wij?
                    [leaf] => FALSE
                )

        )

    [1] => Array
        (
            [leaf] => 
            [cls] => folder
            [text] => Diensten
            [id] => 
            [children] => Array
                (
                    [id] => 
                    [cls] => file
                    [text] => Accountant
                    [leaf] => TRUE
                )

        )

)

 
Berichten: 1.860
Reg. datum: 22 januari 2004

Moet children niet een array van arrays zijn?
Bijv.:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[0] => Array
        (
            [leaf] => 
            [cls] => folder
            [text] => Over ons
            [id] => 
            [children] => Array
                (
                    [0] => Array
                         (
                             [id] => 
                             [cls] => file
                             [text] => Wie zijn wij?
                             [leaf] => FALSE
                         )
                )

        )

Whereas Europeans generally pronounce my name the right way ('Nick-louse Veert'), Americans invariably mangle it into 'Nickel's Worth.' This is to say that Europeans call me by name, but Americans call me by value - Niklaus Wirth

Berichten: 437
Reg. datum: 05 juni 2001

Dat zou inderdaad kunnen. maar hoe geef ik dat aan in php?

Wikkes wijzigde dit bericht 25-07-2008 14:15 (3%)

 

Pagina: 1



VNU Media logo Powered by True

© 1998 - 2008 Tweakers.net - Alle rechten voorbehouden

Uitgever van: