<?php if (isset($_POST['user'])) { $errors = array(); $userObj = new User(); $dao = new UserDao(); //checking if there is singin or signup in the post, depending on if user is //new member or existing, then either create new user or //only get the user id from DB if (array_key_exists('signin', $_POST)) { $data = array('email' => trim(filter_var($_POST['user']['email'], FILTER_SANITIZE_EMAIL)), 'user_password' => trim(filter_var($_POST['user']['user_password'], FILTER_SANITIZE_STRING))); UserMapper::map($userObj, $data); $errors = Validator::validate($userObj); $errors = Validator::validateLoginFields(); if (empty($errors)) { $_SESSION['user_id'] = $dao->findUserByEmail($userObj); Utils::redirect(dashboard); } } if (array_key_exists('signup', $_POST)) { $data = array('email' => trim(filter_var($_POST['user']['email'], FILTER_SANITIZE_EMAIL)), 'user_password' => trim(filter_var($_POST['user']['new_user_password'], FILTER_SANITIZE_STRING))); UserMapper::map($userObj, $data); $errors = Validator::validateSignupFields(); if (empty($errors)) { // server does not allow double up email address and throws an error $dao->createUser($userObj); $_SESSION['user_id'] = $dao->findUserByEmail($userObj); Utils::redirect(dashboard); } } }