title: How to model a many to many relationship?
body: <p>With only a bit of previous experience with databases and no formal education with them, I'm a bit stuck as to how to model this (and retrieve the data I require from it in PHP). This is what I'm trying to model:</p>
  
  <p>For each item on my site, it is allowed to have multiple tags such as file, upload, php, recursive etc. However the tags are reusable, I can have two different items and they each could have the php tag.</p>
  
  <p>I've been trying to read up on how to do this and whether it is lack of experience with it or something else I don't know, but I can't seem to grasp the concept. Apparently you need a middle table which links the two together?</p>
  
  <p>Also once I have this relationship and the tables defined, how would I do things such as:
  - Retrieve all items with a certain tag?
  - Retrieve all tags that one item has?</p>
  
  <p>Thanks for your help, also if anyone could list any further reading on this to strengthen my understanding of the concept that would be great.</p>