Reviewing relational database tables
You have 3 tables of which only first table is normalized, 2nd &amp; 3rd are not.


Normalization works like this:

students_info
st_id | f_name | l_name | date_of_birth | address  | phone
  1   | quinoo | mickel |   1/1/1990    | nowhere1 | 1-800-1234
  2   | nunoo  | gyan   |   2/1/1990    | nowhere2 | 1-555-1234
  3   | kwanis | nnipa  |   3/1/1990    | nowhere3 | 1-555-4321

classes_info
cl_id | class | academic_year
 13   |  A    | 2014      
 32   |  B    | 2014     
 73   |  C    | 2014     

students_classes
cl_id | st_id
13    |  2
13    |  1
32    |  1
32    |  2
73    |  3



Why you got it wrong? You set 3 students and 3 classes, and put each student to one class. If you have 3 students and 3 classes, and each student is going to two classes, in your example you would have duplication of rows in students_class table.


In basic tables, lets call them OBJECT tables (students_info, classes_info) you CAN NOT have duplication, as every object (student, class) is unique. 
In relations tables you have relations and there you can have whatever relations you like, as there you store only id's of basic objects you relate to each other and not all other data pertaining to some object (which is stored in object table). So in students_classes table you have 5 rows, as students 1 and 2 go to two classes each, and 3rd student is going only to one class.
Having 300 students and 20 classes, tables for students and classes whould have 300 and 20 rows respectively, and relations table students_classes would have as many rows as needed, e.g. if every student must take 5 classes, and can take max 10 classes, students_classes table could have from 1500 to 3000 rows (for one academic year).