2010-10-16 4 views
1

J'essaye de construire une application web et j'ai rencontré un peu de mur. Je ne demande à personne de me tenir la main en faisant cela, juste quelques conseils et une poussée dans la bonne direction. Donc, j'essaie de créer une application qui utilise l'API Google Maps pour afficher une carte des parcs locaux près de chez vous et permettre aux gens d'afficher des jeux de collecte (événements sportifs informels) pour une période spécifique dans un parc spécifique. Assez simple non? Jusqu'à présent, j'ai créé une base de données avec un tableau des parcs locaux (colonnes: nom, longitude, latitude) et un script php qui prend cette table et le transforme en un fichier XML que la carte utilise pour tracer les points des parcs. J'ai également créé un formulaire qui utilise php pour insérer de nouvelles données dans la table et ainsi créer un nouveau marqueur de parc sur la carte.PHP, MySQL, Google Maps Questions

Tout s'est bien passé jusqu'à maintenant, mais je ne suis pas sûr de savoir comment procéder. Je pense que je veux créer une table 'jeux' (colonnes: sport, temps, parc (?)) Mais je ne suis pas sûr que cela fonctionne. Serai-je en mesure d'établir une relation entre la table «parcs» et «jeux» de sorte que de nombreux jeux appartiennent à un parc? Si oui, comment pourrais-je cartographier ces jeux? Ma pensée a-t-elle un sens?

Répondre

1

Si vous allez créer la table games avec sport_id | time | park_id colonnes, puis entité game sera liée à park entité par rapport one-to-many. Cela signifie qu'un parc gère 0..Many jeux et un jeu appartient toujours à un parc.

Donc, ceci est une solution adaptée à votre problème. Cela correspond à vos attentes.

Informations complémentaires sur les relations: Cardinality

+0

Ainsi MySQL crée la relation automatiquement lorsque _id est ajouté? – 585connor

+0

Ou devrais-je créer manuellement une relation entre la colonne id sur les parcs et la colonne park_id des jeux? Si oui, de bonnes ressources pour en savoir plus sur comment? – 585connor

+0

Non, mysql ne crée pas de relation automatiquement. Pour conserver l'intégrité, vous devez créer manuellement une contrainte de clé étrangère: http://dev.mysql.com/doc/refman/5.1/fr/innodb-foreign-key-constraints.html – zerkms