From: Will J. <wj...@ny...> - 2005-09-28 17:19:15
|
Sorry this is a little long....and sorry if its a little nubish, because it is. As some know my goal is to get some sort of wiki-type package working that generates a Google Map on a page and lets you add content and edit it like a wiki. I am looking for some advice on an approach to structuring its database before I start hacking at php code. Google Maps is heavily dependant on javascript and XML - there is some background about Google Maps at the end of this email. But briefly, there are a vew basic parts to google maps. *The Map: a javascript(js) engine *Marker and Polyline Data: which Gmaps likes in the form of XML or js *Marker Content: HTML Each part will also need to have options associated with it. For example for each marker it would be nice to have these kinds of options: *Comments *Type - Normal Marker (as rendered by Google) *Type - PdMarker (a hack style with different features) *Type - GxMarker (another hack style with different features) *Custom Look and feel *Connection to Flickr *Organize as a group My first thoughts on this were, well, maybe each object, a map, a marker, a line could be a little wiki page with javascript content or XML content since everything eventually gets sent up to the map javascript engine. When you choose a feature via the UI the engine would generate the full js code or text with a new Gmap-wiki syntax and that could be saved in a wikipage. But it seems that would make editing it through a UI a real pain! Maybe things should be more structured, more specific. What would seem to make more sense to me is that each object type would have a database table structure and take values from user input. Except that then this seems like it could result in a lot of queries each time a map is loaded. Plus some other questions come up like, what to do if someone wants to upload XML? and how to nest stuff or group stuff, like 100 markers? Perhaps there is another package, that already has a more complex database structure than the wiki, to look at and get some ideas. oh, or best of both worlds, the data gets rendered into javascript that is cached, and the database queries only happen when making the cached js and during editing. Anyway I am looking for some advice on how to store the data and get it up to the user. Hope that all made sense. I have some longer thoughts on what I would like for eventual features on this page: http://mapki.com/index.php?title=GMap_Wikimap_Project and, here is a little more background on Google Maps if you are not already familiar with them. *Google Maps is a javascript app. *Google Maps lets you create markers on a map by submitting lat/lon values. *Markers can also have html content inside popup windows. *Google Maps lets you create lines on a map by submitting an array of lat/lon values. *Google Maps makes good use of XMLHttpRequest for updating info on the map without refreshing. *Refreshing a Google Map page is impracticle if not impossible due to javescript memory leaks. All sorts of details about Google Maps API can be found at and via http://mapki.com Cheers, Will |