Your insert is not correct.
It should read
Insert into Student( firstname, lastname, gender, address, phone, dob, email)
values (@firstname, @lastname, @gender, @address, @phone, @dob, @email)
Basically the insert line (line 1) should be the columns you want to insert into.
The second (values line 2) should be the values of the parameters.
You could re-write this to (Providing that the columns in your table are in the same order as the parameters):
insert into Student
select @firstname, @lastname, @gender, @address, @phone, @dob, @email