diff --git a/~dev_rating/application/classes/Controller/Handler/Settings.php b/~dev_rating/application/classes/Controller/Handler/Settings.php
index cc94055018b503a430da50405a12e261c306b7d4..e6181d7fe9742bc99199d4cf0ac6b54874a9d77d 100644
--- a/~dev_rating/application/classes/Controller/Handler/Settings.php
+++ b/~dev_rating/application/classes/Controller/Handler/Settings.php
@@ -81,9 +81,11 @@ class Controller_Handler_Settings extends Controller_Handler
     }
 
     public function action_setSemesterID() {
-        $semester = $this->post['semesterID'];
-        if (is_int($semester) && $semester > 0) {
-            $this->user->SemesterID = $semester;
+        $this->post
+            ->rule('semesterID', 'not_empty')
+            ->rule('semesterID', 'digit');
+        if ($this->post->check()) {
+            $this->user->SemesterID = (int) $this->post['semesterID'];
         }
     }
 }