Pour éliminer les champs vides de la table utilisateur, vous pouvez procéder comme suit :
--------------------------------------------------
| id | user | level | login | password |
--------------------------------------------------
où user
contient tous vos identifiants d'étudiants et d'enseignants et level
qui contient 1
pour les enseignants et 2
pour les étudiants.
Dans ce cas, vous pouvez utiliser la colonne de niveau pour créer un accès dans votre application.
Une autre méthode consiste à utiliser une seule table... séparez les niveaux des élèves et des enseignants, mais ce n'est pas la meilleure pratique.