I am writing from scratch yes, using plain php. Not sure what you mean by web frameworks, but I'll look into it. Along with 'normalisation' and the rest. A friend keeps insisting I check out drupal (spelling?) but I've resisted because I really want to teach myself some php and I really want to know every inch of my code for maximum tweakability and something truely individual. I'm sure there may be some argumernts that I'm shooting myself in the foot somehow wih that attitude but it is a lot of fun chucking yourself in at the deep end and having to think much harder than usual sometimes. I know my project is a fairly tall order but I think it's doable :D ...sooner or later.
Back on topic I've also noticed that the smf forum 'post table' stores the poster ID, also their name and their email, which are also obviously on the 'members' table. I was led to believe that it was 'reasonably bad database practice' to be storing the same info twice, but maybe I've taken that a bit too literally? In some cases it would be a lot handier, and save the need to join tables and cross referencing when you just want a member name associated with a post. I've been trying to avoid at all costs storing anything twice, and stashing purely the member ID and then using that to reference the members table to get their name. Hmmm. I guess it's more a case of weighing up the need to store certain things a few times in different places for ease of retrievingthe info you want with minimal querying and table joining.
Thanks again for the pointers!