user23 wrote:I have the following tables: users, teachers, subjects, school.
That sounds fine, though I wonder if the users table should be named students instead, or if all teachers will also be in the users table. Also, if you want to use plural names, then school should probably be renamed schools.
user23 wrote:now i have added a table for each subject. The original subjects table stores the subject names and echoes them on the profile page. However, when the user clicks a subject i want to send them to the page subject.php but it will be appended with the content from the right table eg..maths, english etc
The content should also be stored in the original subjects table. Do not have separate tables for each subject. With just a single subjects table, selecting the content given the subject is easy.
user23 wrote:and no i mean LONG as its going to contain a lot of info
If LONG is indeed a valid column type, then it is probably a numeric type, so that would be a wrong choice for the field. If you just mean that the field will contain a long string of text rather than LONG as a type, then fine, but then writing "LONG" instead of "long" is just misleading since the convention is to fully capitalise SQL keywords.