$success = true; require_once "classes/validationhelper.class.php"; $required = array(); $required[] = array("key" => "email", "msg" => "Please enter: email"); $required[] = array("key" => "password", "msg" => "Please enter: Password"); foreach ($required as $value) { if (!ValidationHelper::required($value["key"], $_POST)) { $message = "<span class=\"feedbackNegative\">" . $value["msg"] . "</span>"; $focusId = $value["key"]; $success = false; break; } } // connect to db if ($success) { $row = UserHelper::getUserRow($db, $_POST["email"], md5($_POST["password"])); if ($row === false) { $success = false; $message = "<span class=\"feedbackNegative\">Invalid login details</span>"; } else { // restart the session, so there can never be an overlap on one machine. // all operations are checked atomically session_unset(); session_destroy(); session_start(); // $sessionid = session_id(); SessionHelper::setSession($row); CookieHelper::setLoginUser($_POST["email"]); CookieHelper::setLoginPass(md5($_POST["password"])); } }