Kolem $secpass
musíte dát uvozovky v dotazu:
$newStudent = $dbh->exec ("INSERT INTO Student (uname, pass, fname, lname, email, currGrade) VALUES('$_POST[reguser]','$secPass','$_POST[regfirst]','$_POST[reglast]','$_POST[regemail]','$_POST[regclassrank]')");
Jen pro FYI, s vaším kódem je zde spousta dalších problémů. Největší z nich je, že sůl by měla být náhodná. Můžete jej uložit do databáze vedle hesla, ale použití různých náhodných solí pro každé heslo výrazně snižuje používání duhových tabulek.
Za druhé, a to je mnohem větší problém, musíte své proměnné opustit pomocí mysql_real_escape_string()
nebo převedením přístupu k databázi na používání PDO. Jinak se otevíráte světu bolesti v podobě útoků SQL injection.