Is it to mean that it cant support a large 'recordset' ? On 12/18/08, Richard Quadling <[email protected]> wrote: > > 2008/12/18 jason maina <[email protected]>: >> Hi George, >> >> Thanks for the input. >> Well, the data is converted to json by php from a nested array after >> extracting the data from a database thus the reason why there's flowerset >> and flowers. >> >> Im finally through with it, it looks kinda complicated in the nesting >> element but it somehow while retreiving the data it was easy remebering >> the >> various "layers". >> >> On the same breath will be looking into streamlining it and making it thin >> as you have outlined. >> >> Thanks >> Regards >> Jason >> >> On Thu, Dec 18, 2008 at 4:42 PM, George <[email protected]> >> wrote: >>> >>> Hi Jason, >>> >>> Forgive me if I've misunderstood the question, but hopefully this >>> might help. >>> >>> As far as I know, you can infinitely nest your JSON data if that's >>> what you want to do. I've noticed some fundamental problems with your >>> JSON you pasted in your post which may just be typos, but need to be >>> cleared up before your code will work. Firstly the items in your >>> 'flowerset' are not enclosed in square brackets. Secondly your names >>> (eg groupCode) do not need to be enclosed in quotations although this >>> won't break things. Thirdly, in my opinion, you could break this down >>> and request a much smaller and less complex dataset from the server >>> (maybe just the group names first, then depending on what the user >>> clicked on get the flower names and so on) Thus putting less load on >>> the server and reducing bandwidth. Also, I'd say to have everything >>> nested under the name rsJson just adds another unnecessary dimension >>> of complication. >>> >>> Think of JSON as just a long bunch of name value pairs [{name:value}] >>> separated by commas where a value can be a number, string or another >>> array. If your value is another array, then it must be enclosed in >>> square brackets. As such, there should never be a curly bracket >>> immediately after a colon ( [{name:{name:value, name:value}, >>> name:value}] ) is wrong. [{name:[{name:value, name:value}], >>> name:value}] is correct. >>> >>> I've cleaned up a little bit of your data just to demonstrate the >>> correct syntax: >>> >>> {rsJson: >>> [ >>> {groupCode:"1",groupName:"Roses",flowerSet:[ >>> {flowers: [ >>> {flowerCode:"15",flowerName:"Roses"} >>> ]} >>> ]}, >>> {groupCode:"2",groupName:"Carnations",flowerSet:[ >>> {flowers:[ >>> {flowerCode:"16",flowerName:"Spray Carnations"}, >>> {flowerCode:"17",flowerName:"Standard Carnations"} >>> ]} >>> ]} >>> ]} >>> >>> To get to your data do something like this: >>> >>> myDataSetVar[0].rsJson[0].groupCode (would give you "1") >>> myDataSetVar[0].rsJson[1].flowerSet[0].flowers[1].flowerName (would >>> give you "Standard Carnations") >>> >>> >>> Really hope that helps and I haven't confused things further. >>> >>> All the best >>> >>> George >>> >>> >>> On Dec 18, 9:04 am, "jason maina" <[email protected]> wrote: >>> > Thanks Ryan guess was kind of tired had failed looking at some of the >>> > points >>> > rather was not getting the point. Finally I'm through this is the final >>> > product: >>> > >>> > >>> > {"rsJson":[{"groupCode":"1","groupName":"Roses","flowerSet":{"flowers":[{"flowerCode":"15","flowerName":"Roses"}]}},{"groupCode":"2","groupName":"Carnations","flowerSet":{"flowers":[{"flowerCode":"16","flowerName":"Spray >>> > Carnations"},{"flowerCode":"17","flowerName":"Standard >>> > >>> > Carnations"}]}},{"groupCode":"3","groupName":"Perennials","flowerSet":{"flowers":[{"flowerCode":"2","flowerName":"Aster"},{"flowerCode":"3","flowerName":"Alstromeria"},{"flowerCode":"10","flowerName":"Gysophila"},{"flowerCode":"12","flowerName":"Limonium >>> > >>> > Perezzi"}]}},{"groupCode":"4","groupName":"Annuals","flowerSet":{"flowers":[{"flowerCode":"1","flowerName":"Ammi >>> > >>> > Majus"},{"flowerCode":"4","flowerName":"Bupleurum"},{"flowerCode":"5","flowerName":"Carthamus"},{"flowerCode":"6","flowerName":"Chinese >>> > >>> > Aster"},{"flowerCode":"7","flowerName":"Chrysantemum"},{"flowerCode":"8","flowerName":"Delphinium"},{"flowerCode":"13","flowerName":"Lisianthus"},{"flowerCode":"14","flowerName":"Molucella"},{"flowerCode":"18","flowerName":"Statice"},{"flowerCode":"19","flowerName":"Stocks"}]}},{"groupCode":"5","groupName":"Bulbs","flowerSet":{"flowers":[{"flowerCode":"9","flowerName":"Freesia"},{"flowerCode":"11","flowerName":"Lilies"}]}}]} >>> > >>> > kind regards >>> > Jason >>> > >>> > On Wed, Dec 17, 2008 at 8:04 PM, jason maina <[email protected]> >>> > wrote: >>> > > What im wondering out of the reply is I cant have a nested JSON >>> > > object >>> > > with >>> > > the following layout? >>> > >>> > > groupID, groupName, groupItems(array of items) >>> > >>> > > similar example: >>> > >>> > >>> > > >http://labs.adobe.com/technologies/spry/samples/data_region/JSONDataS... >>> > >>> > > Regards, >>> > > Jason >>> > >>> > > On Wed, Dec 17, 2008 at 7:02 PM, Ryan Gahl <[email protected]> >>> > > wrote: >>> > >>> > >> typo... "...with NO properties" >>> > >>> > >> On Wed, Dec 17, 2008 at 10:02 AM, Ryan Gahl <[email protected]> >>> > >> wrote: >>> > >>> > >>> Here are your problems... I'll remove the bulk of the data to make >>> > >>> it >>> > >>> more clear: >>> > >>> > >>> rsJson: {[{...}]} >>> > >>> > >>> what you have is illegal. You're essentially saying you have an >>> > >>> anonymous >>> > >>> object with not properties and filling it with an array (that's >>> > >>> probably not >>> > >>> even totally accurate)... the bottom line is, you can't have a >>> > >>> curly >>> > >>> brace >>> > >>> immediately followed by a square brace. And going further you have >>> > >>> it all >>> > >>> just sitting in a property floating in space. The first thing you >>> > >>> need to do >>> > >>> is wrap the property in curlies so you're actually returning an >>> > >>> object... >>> > >>> > >>> {rsJson: ...} >>> > >>> > >>> Now, this other issue of putting a square bracket right inside a >>> > >>> curly... >>> > >>> You can either a) remove the outer curlies and just make rsJson be >>> > >>> an array, >>> > >>> or b) add a property name which then becomes the array. >>> > >>> > >>> a) >>> > >>> {rsJson: [{}, {}, ...]} >>> > >>> > >>> b) >>> > >>> {rsJson: {myArray: [...]}} >>> > >>> > >>> On Wed, Dec 17, 2008 at 9:53 AM, jason maina >>> > >>> <[email protected]>wrote: >>> > >>> > >>>> Hi all, >>> > >>>> Below is JSON encoded(php) data. After evaluating and sanitizing >>> > >>>> it >>> > >>>> im >>> > >>>> not capable of extracting its contents im just not sure what im >>> > >>>> doing wrong: >>> > >>> > >>>> [php output] >>> > >>> > >>>> >>> > >>>> rsJson:{[{"groupCode":"1","groupName":"Roses","flowers":[{"flowerCode":"15","flowerName":"Roses"}]}, >>> > >>>> >>> > >>>> {"groupCode":"2","groupName":"Carnations","flowers":[{"flowerCode":"16","flowerName":"Spray >>> > >>>> Carnations" >>> > >>>> },{"flowerCode":"17","flowerName":"Standard >>> > >>>> Carnations"}]},{"groupCode":"3","groupName":"Perennials" >>> > >>> > >>>> >>> > >>>> ,"flowers":[{"flowerCode":"2","flowerName":"Aster"},{"flowerCode":"3","flowerName":"Alstromeria"},{"flowerCode" >>> > >>>> >>> > >>>> :"10","flowerName":"Gysophila"},{"flowerCode":"12","flowerName":"Limonium >>> > >>>> Perezzi"}]},{"groupCode":"4" >>> > >>>> >>> > >>>> ,"groupName":"Annuals","flowers":[{"flowerCode":"1","flowerName":"Ammi >>> > >>>> Majus"},{"flowerCode":"4","flowerName" >>> > >>>> >>> > >>>> :"Bupleurum"},{"flowerCode":"5","flowerName":"Carthamus"},{"flowerCode":"6","flowerName":"Chinese >>> > >>>> Aster" >>> > >>> > >>>> >>> > >>>> },{"flowerCode":"7","flowerName":"Chrysantemum"},{"flowerCode":"8","flowerName":"Delphinium"},{"flowerCode" >>> > >>> > >>>> >>> > >>>> :"13","flowerName":"Lisianthus"},{"flowerCode":"14","flowerName":"Molucella"},{"flowerCode":"18","flowerName" >>> > >>> > >>>> >>> > >>>> :"Statice"},{"flowerCode":"19","flowerName":"Stocks"}]},{"groupCode":"5","groupName":"Bulbs","flowers" >>> > >>> > >>>> >>> > >>>> :[{"flowerCode":"9","flowerName":"Freesia"},{"flowerCode":"11","flowerName":"Lilies"}]}]} >>> > >>> > >>>> [php output] >>> > >>> > >>>> var jsonObj = res.responseText.evalJSON(true); >>> > >>>> alert(jsonObj); >>> > >>> > >>>> will not even popup, on firebug no errors showing up. >>> > >>> > >>>> Kind regards >>> > >>>> Jason >>> > >>> > >>> -- >>> > >>> Ryan Gahl >>> > >>> CEO >>> > >>> Nth Penguin, LLC >>> > >>>http://www.nthpenguin.com >>> > >>> -- >>> > >>> WebWidgetry.com / MashupStudio.com >>> > >>> Future Home of the World's First Complete Web Platform >>> > >>> -- >>> > >>> Inquire: 1-920-574-2218 >>> > >>> Blog:http://www.someElement.com >>> > >>> LinkedIn Profile:http://www.linkedin.com/in/ryangahl >>> > >>> > >> -- >>> > >> Ryan Gahl >>> > >> CEO >>> > >> Nth Penguin, LLC >>> > >>http://www.nthpenguin.com >>> > >> -- >>> > >> WebWidgetry.com / MashupStudio.com >>> > >> Future Home of the World's First Complete Web Platform >>> > >> -- >>> > >> Inquire: 1-920-574-2218 >>> > >> Blog:http://www.someElement.com >>> > >> LinkedIn Profile:http://www.linkedin.com/in/ryangahl >>> >> >> >> > >> > > > PHP has a depth limit of 512. It was 128 and before that only 20! > > It was rasied from 20 to 128 on Thu May 24 22:39:06 2007 UTC > (http://cvs.php.net/viewvc.cgi/php-src/ext/json/JSON_parser.c?r1=1.10&r2=1.11) > and from 128 to 512 on Wed Jul 30 13:57:47 2008 UTC > (http://cvs.php.net/viewvc.cgi/php-src/ext/json/JSON_parser.c?r1=1.17&r2=1.18) > > Richard. > -- > ----- > Richard Quadling > Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731 > "Standing on the shoulders of some very clever giants!" > > > >
-- Sent from Gmail for mobile | mobile.google.com --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Prototype & script.aculo.us" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/prototype-scriptaculous?hl=en -~----------~----~----~----~------~----~------~--~---
