public static function updateUser() { // Process updating of user information $users = UsersDB::getUsersBy('userId', $_SESSION['arguments']); if (empty($users)) { HomeView::show(); header('Location: /' . $_SESSION['base']); } elseif ($_SERVER["REQUEST_METHOD"] == "GET") { $_SESSION['users'] = $users; UserView::showUpdate(); } else { $parms = $users[0]->getParameters(); $parms['userName'] = array_key_exists('userName', $_POST) ? $_POST['userName'] : ""; $parms['password'] = array_key_exists('password', $_POST) ? $_POST['password'] : ""; $newUser = new User($parms); $newUser->setUserId($users[0]->getUserId()); $user = UsersDB::updateUser($newUser); if ($user->getErrorCount() != 0) { $_SESSION['users'] = array($newUser); return; UserView::showUpdate(); } else { HomeView::show(); header('Location: /' . $_SESSION['base']); } } }
public static function run() { $action = array_key_exists('action', $_SESSION) ? $_SESSION['action'] : ""; $arguments = $_SESSION['arguments']; switch ($action) { case "new": if ($_SERVER["REQUEST_METHOD"] == "POST") { $reviewData = new ReviewData($_POST); if ($reviewData->getErrorCount() == 0) { $dbReviewData = ReviewDB::addReview($reviewData); HomeView::show(); } else { ReviewView::show($reviewData); } } else { ReviewView::show(null); } break; case "show": $users = UsersDB::getUsersBy('userId', $arguments); $_SESSION['user'] = !empty($users) ? $users[0] : null; self::show(); break; case "showall": $_SESSION['reviews'] = ReviewDB::getReviewsBy(); $_SESSION['headertitle'] = "h00dFliX Reviews"; $_SESSION['footertitle'] = "<h3>The footer goes here</h3>"; ReviewsView::showall(); break; case "update": echo "Update"; self::updateUser(); break; default: } }
public static function run() { $user = null; $userIsLegit = false; if ($_SERVER['REQUEST_METHOD'] == 'POST') { $user = new User($_POST); if ($user->getErrorCount() == 0) { $checkUserArray = UsersDB::getUsersBy('username', $user->getUserName()); if (count($checkUserArray) > 0) { $checkUser = $checkUserArray[0]; $user->setUserId($checkUser->getUserId()); $userIsLegit = password_verify($_POST['password'], $checkUser->getPassword()); } } } else { LoginView::show(); return; } if ($userIsLegit) { $_SESSION['authenticatedUser'] = $user; $_SESSION['authenticated'] = true; HomeView::show(); } else { $user->setError('username', 'USERNAME_PASSWORD_COMBO_INVALID'); $_SESSION['user'] = $user; LoginView::show(); } }
private function updateUser($userId) { $users = UsersDB::getUsersBy('user_id', $userId); if (empty($users)) { HomeView::show(); header('Location: /' . $_SESSION['base']); } else { if ($_SERVER['REQUEST_METHOD'] == 'GET') { $_SESSION['user'] = $users[0]; UserView::showUpdate(); } else { $params = $users[0]->getParameters(); $params['username'] = array_key_exists('username', $_POST) ? $_POST['username'] : ""; $params['password'] = array_key_exists('password', $_POST) ? $_POST['password'] : ""; $updatedUser = new User($params); $updatedUser->setUserId($users[0]->getUserId()); $plaintextPassword = $updatedUser->getPassword(); $hashedPassword = password_hash($plaintextPassword, PASSWORD_DEFAULT); $updatedUser->setPassword($hashedPassword); $returnedUser = UsersDB::updateUser($updatedUser); if ($returnedUser->getErrorCount() == 0) { // TODO: Log out the current user before diplaying the HomeView; LogoutController::LogoutCurrentUser() HomeView::show(); header('Location: /' . $_SESSION['base']); } else { $_SESSION['user'] = $updatedUser; UserView::showUpdate(); } } } }
public static function addReview($review) { // Inserts $review into the Reviews table and returns reviewId $query = "INSERT INTO Reviews (review, score, submissionId, reviewerId)\r\n\t\t VALUES(:review, :score, :submissionId, :reviewerId)"; try { $db = Database::getDB(); if (is_null($review) || $review->getErrorCount() > 0) { return $review; } $users = UsersDB::getUsersBy('userName', $review->getReviewerName()); if (is_null($users) || empty($users)) { $review->setError('reviewerName', 'REVIEWER_NAME_DOES_NOT_EXIST'); return $review; } $statement = $db->prepare($query); $statement->bindValue(":review", $review->getReview()); $statement->bindValue(":score", $review->getScore()); $statement->bindValue(":submissionId", $review->getSubmissionId()); $statement->bindValue(":reviewerId", $users[0]->getUserId()); $statement->execute(); $statement->closeCursor(); $returnId = $db->lastInsertId("reviewId"); $review->setReviewId($returnId); } catch (Exception $e) { // Not permanent error handling $review->setError('reviewId', 'REVIEW_IDENTITY_INVALID'); } return $review; }
public static function updateUser() { $users = UsersDB::getUsersBy('userID', $_SESSION['arguments']); if (empty($users)) { HomeView::show(); header('Location: /' . $_SESSION['base']); } elseif ($_SERVER["REQUEST_METHOD"] == "GET") { $_SESSION['users'] = $users; UserView::showUpdate(); } else { $parms = $users[0]->getParameters(); $parms['userName'] = array_key_exists('userName', $_POST) ? $_POST['userName'] : $users[0]->getUsername(); $parms['rank'] = array_key_exists('rank', $_POST) ? $_POST['rank'] : $users[0]->getRank(); $newUser = new User($parms); $newUser->setUserID($users[0]->getUserID()); $user = UsersDB::updateUser($newUser); if ($user->getErrorCount() != 0) { $_SESSION['user'] = $newUser; UserView::showUpdate(); } else { HomeView::show(); header('Location: /' . $_SESSION['base']); } } }
private function show() { $arguments = array_key_exists('arguments', $_SESSION) ? $_SESSION['arguments'] : 0; // Identify the target user $users = UsersDB::getUsersBy('user_id', $arguments); $user = $users[0]; if (!is_null($user)) { // Prepare all data to be displayed in the target user's ProfileView // --all of their datasets // --all of the sensors for each dataset // TODO: add 'member since' $datasets = DatasetsDB::getDatasetsBy('user_id', $user->getUserId()); foreach ($datasets as $dataset) { $sensors = SensorsDB::getSensorsBy('dataset_id', $dataset->getDatasetId()); $dataset->setSensors($sensors); } $_SESSION['user'] = $user; $_SESSION['datasets'] = $datasets; ProfileView::show(); } else { $_SESSION['user'] = null; // TODO:: Consider showing a 'Specified user does not exist' page HomeView::show(); } }
public static function addSubmission($submission) { // Inserts $submission into the Submissions table and returns submissionId $query = "INSERT INTO Submissions (submissionFile, assignmentNumber, submitterId)\r\n\t\t VALUES(:submissionFile, :assignmentNumber, :submitterId)"; try { $db = Database::getDB(); if (is_null($submission) || $submission->getErrorCount() > 0) { return $submission; } $users = UsersDB::getUsersBy('userName', $submission->getSubmitterName()); if (is_null($users) || empty($users)) { $submission->setError('submitterName', 'SUBMITTER_NAME_DOES_NOT_EXIST'); return $submission; } $statement = $db->prepare($query); $statement->bindValue(":submissionFile", $submission->getSubmission()); $statement->bindValue(":assignmentNumber", $submission->getAssignmentNumber()); $statement->bindValue(":submitterId", $users[0]->getUserId()); $statement->execute(); $statement->closeCursor(); $returnId = $db->lastInsertId("submissionId"); $submission->setSubmissionId($returnId); } catch (Exception $e) { // Not permanent error handling $submission->setError('submissionId', 'SUBMISSION_IDENTITY_INVALID'); } return $submission; }
public function testUpdateUserName() { // Test the update of the userName $myDb = DBMaker::create('ptest'); Database::clearDB(); $db = Database::getDB('ptest', 'C:\\xampp\\myConfig.ini'); $users = UsersDB::getUsersBy('userId', 1); $user = $users[0]; $parms = $user->getParameters(); $this->assertEquals($user->getUserName(), 'Kay', 'Before the update it should have user name Kay'); $parms['userName'] = '******'; $newUser = new User($parms); $newUser->setUserId(1); $user = UsersDB::updateUser($newUser); $this->assertEquals($user->getUserName(), 'Kay1', 'Before the update it should have user name Kay1'); $this->assertTrue(empty($user->getErrors()), 'The updated user should not have errors'); }
public function testUpdateUserEmail() { $myDB = DBMaker::create('botspacetest'); Database::clearDB(); $db = Database::getDB('botspacetest', 'C:\\xampp\\myConfig.ini'); $testUserId = 1; $users = UsersDB::getUsersBy('userId', $testUserId); $user = $users[0]; $params = $user->getParameters(); $this->assertEquals($user->getEmail(), '*****@*****.**', 'Before the update it should have email bjabituya@yahoo.com'); $params['email'] = '*****@*****.**'; $newUser = new User($params); $newUser->setUserId($testUserId); $user = UsersDB::updateUser($newUser); $this->assertEquals($user->getEmail(), '*****@*****.**', 'After the update it should have email bjabituya2000@yahoo.com'); $this->assertTrue(empty($user->getErrors()), 'The updated user should have no errors'); }
public static function setProfileDataForUser($userId) { $retVal = false; if (empty($userId) || !is_numeric($userId)) { return $retVal; } $user = null; $userData = null; $skillAssocs = null; $userRobots = null; $users = UsersDB::getUsersBy('userId', $userId); if (count($users) > 0) { $user = $users[0]; if ($user->getErrorCount() != 0) { return $retVal; } $userDataArray = UserDataDB::getUserDataBy('userId', $userId); if (count($userDataArray) > 0) { $userData = $userDataArray[0]; } if ($userData->getErrorCount() != 0) { return $retVal; } $skillAssocs = SkillAssocsDB::getSkillAssocsBy('userDataId', $userData->getUserDataId()); foreach ($skillAssocs as $skillAssoc) { if ($skillAssoc->getErrorCount() != 0) { return $retVal; } } $robotAssocs = RobotAssocsDB::getRobotAssocsBy('creatorId', $userData->getUserDataId()); $userRobots = array(); foreach ($robotAssocs as $robotAssoc) { $robotArray = RobotDataDB::getRobotDataBy('robotId', $robotAssoc->getRobotId()); if (count($robotArray) > 0) { array_push($userRobots, $robotArray[0]); } } $_SESSION['user'] = $user; $_SESSION['userData'] = $userData; $_SESSION['skillAssocs'] = $skillAssocs; $_SESSION['userRobots'] = $userRobots; $retVal = true; } return $retVal; }
public static function run() { if ($_SERVER["REQUEST_METHOD"] == "POST") { $user = new User($_POST); if ($user->getErrorCount() != 0) { LoginView::show($user); } else { $users = UsersDB::getUsersBy('userName', $user->getUserName()); if (!empty($users)) { HomeView::show($users[0]); } else { $user->setError('userName', 'USER_NAME_DOES_NOT_EXIST'); LoginView::show($user); } } } else { // Initial link LoginView::show(null); } }
public static function run() { $user = null; if ($_SERVER["REQUEST_METHOD"] == "POST") { $user = new User($_POST); $users = UsersDB::getUsersBy('email', $user->getEmail()); if (empty($users)) { $user->setError('userName', 'EMAIL_PASSWORD_COMBO_INVALID'); } else { $user = $users[0]; } } $_SESSION['user'] = $user; if (is_null($user) || $user->getErrorCount() != 0) { LoginView::show(); } else { HomeView::show(); //header('Location: /'.$_SESSION['base']); } }
public static function run() { $user = null; if ($_SERVER["REQUEST_METHOD"] == "POST") { $user = new User($_POST); $users = UsersDB::getUsersBy('userName', $user->getUserName()); if (empty($users)) { $user->setError('userName', 'USER_NAME_DOES_NOT_EXIST'); } else { $user = $users[0]; } } $_SESSION['user'] = $user; if (is_null($user) || $user->getErrorCount() != 0) { LoginView::show(); } else { HomeView::show(); header('Location: /' . $_SESSION['base']); } }
public static function run() { $action = array_key_exists('action', $_SESSION) ? $_SESSION['action'] : ""; $arguments = array_key_exists('arguments', $_SESSION) ? $_SESSION['arguments'] : ""; switch ($action) { case "create": self::newDataset(); break; case "show": if ($arguments == 'all') { $_SESSION['datasets'] = DatasetsDB::getDatasetsBy(); $_SESSION['headertitle'] = 'Sensor Data Repo | Datasets'; DatasetView::showAll(); } else { $datasets = DatasetsDB::getDatasetsBy('dataset_id', $arguments); if (count($datasets) > 0) { $dataset = $datasets[0]; $_SESSION['dataset'] = $dataset; $users = UsersDB::getUsersBy('user_id', $dataset->getUserId()); if (count($users) > 0) { $_SESSION['user'] = $users[0]; self::show(); } else { HomeView::show(); } } else { HomeView::show(); } } break; case "update": $datasets = DatasetsDB::getDatasetsBy('dataset_id', $arguments); $_SESSION['dataset'] = $datasets[0]; self::updateDataset(); break; default: } }
public static function run() { $user = null; if ($_SERVER["REQUEST_METHOD"] == "POST") { $user = new User($_POST); $users = UsersDB::getUsersBy('userName', $user->getUsername()); if (empty($users)) { $user->setError('userName', 'USER_NAME_DOES_NOT_EXIST'); } elseif (!$user->verifyPassword($users[0]->getPasswordHash())) { $user->setError('userName', 'USER_PASSWORD_INCORRECT'); } else { $user = $users[0]; } } $_SESSION['user'] = $user; if (is_null($user) || $user->getErrorCount() != 0) { if (!is_null($user)) { echo '<br>'; echo '<br>'; echo $users[0]; echo '<br>'; echo $users[0]->getPasswordHash(); echo '<br>'; echo strlen($users[0]->getPasswordHash()); echo '<br>'; echo $user->verifyPassword($users[0]->getPasswordHash()) ? 'true' : 'false'; echo '<br>'; print_r($user->getTheErrors()); } LoginView::show(); } else { $_SESSION['authenticatedUser'] = $user; HomeView::show(); header('Location: /' . $_SESSION['base']); } }
public static function run() { if ($_SERVER["REQUEST_METHOD"] == "POST") { $new_post = $_POST; if (isset($_FILES["submissionFile"])) { $new_post["submissionFile"] = $_FILES["submissionFile"]; } $submission = new Submission($new_post); if ($submission->getErrorCount() != 0) { SubmissionView::show($submission); } else { $users = UsersDB::getUsersBy('userName', $submission->getUserName()); if ($users != null && !empty($users)) { HomeView::show($users[0]); } else { $submission->setError('userName', 'USER_NAME_DOES_NOT_EXIST'); SubmissionView::show($submission); } } } else { // Initial link SubmissionView::show(null); } }
DBMaker::create('ptest'); $_SERVER["REQUEST_METHOD"] = "POST"; $_SESSION = array('base' => 'mvcdbcrud', 'control' => 'user', 'action' => 'show', 'arguments' => 1); UserController::run(); ?> <h2>It should go to home when no user exists</h2> <?php DBMaker::create('ptest'); $_SERVER["REQUEST_METHOD"] = "GET"; $_SESSION = array('base' => 'mvcdbcrud', 'control' => 'user', 'action' => 'show', 'arguments' => 0); UserController::run(); ?> <h2>It should allow update</h2> <?php $db = DBMaker::create('ptest'); $_SERVER["REQUEST_METHOD"] = "POST"; $_SESSION = array('base' => 'mvcdbcrud', 'control' => 'user', 'action' => 'update', 'arguments' => 1); $_POST = array("userName" => 'Kay1', 'password' => 'xxx'); print_r($_POST); UserController::run(); $users = UsersDB::getUsersBy('userId', '1'); ?> <?php ob_end_flush(); ?> </body> </html>
echo "The value of User 2 is:<br>{$users['0']}<br>"; ?> <h2>It should not get a User not in Users</h2> <?php $users = UsersDB::getUsersBy('email', '*****@*****.**'); if (empty($users)) { echo "No user dalfk@adlfkj.edu"; } else { echo "The value of User dalfk@adlfkj.edu is:<br>{$users['0']}<br>"; } ?> <h2>It should not get a User by a field that isn't there</h2> <?php $users = UsersDB::getUsersBy('height', '59'); if (empty($users)) { echo "No user with this height"; } else { echo "The value of User with a specified height is:<br>{$user}<br>"; } ?> <h2>It should get a email by user id</h2> <?php $userNames = UsersDB::getUserValuesBy('userId', 1, 'email'); print_r($userNames); ?> </body> </html>
public static function showNew() { $userData = array_key_exists('userData', $_SESSION) ? $_SESSION['userData'] : null; $skillAssocs = array_key_exists('skillAssocs', $_SESSION) ? $_SESSION['skillAssocs'] : array(); $base = array_key_exists('base', $_SESSION) ? $_SESSION['base'] : ""; $_SESSION['headertitle'] = "botspace UserData Creator"; $_SESSION['styles'] = array('site.css'); MasterView::showHeader(); MasterView::showNavBar(); // First find some available userIds to associate the new UserData with $users = UsersDB::getUsersBy(); $availableUsers = array(); if (!is_null($users) && count($users) > 0) { foreach ($users as $user) { $userDataArray = UserDataDB::getUserDataBy('userId', $user->getUserId()); if (count($userDataArray) == 0) { array_push($availableUsers, $user); } } } echo '<h1>Create a new UserData entry</h1>'; echo '<form action="/' . $base . '/userdata/create/new" method="POST">'; if (!is_null($userData) && array_key_exists('userDataId', $userData->getErrors())) { echo 'Error: ' . $userData->getError('userDataId') . "<br>"; } echo 'UserId: '; echo '<select name="userId">'; echo '<option value="0"> </option>'; foreach ($availableUsers as $availUser) { $userId = $availUser->getUserId(); echo '<option value="' . $userId . '">' . $userId . '</option>'; } echo '</select><br><br>'; echo 'Name: <input type="text" name="user_name"'; if (!is_null($userData)) { echo 'value = "' . $userData->getUserName() . '"'; } echo 'tabindex="2" required>' . "\n"; echo '<span class="error">'; if (!is_null($userData)) { echo $userData->getError('user_name'); } echo '</span><br><br>' . "\n"; echo 'Skill Level: <input type="radio" name="skill_level" value="novice" tabindex="3"'; if (is_null($userData) || !is_null($userData) && strcmp($userData->getSkillLevel(), UserData::$SKILL_LEVELS['0']) == 0) { echo "checked"; } echo '>Novice'; echo '<input type="radio" name="skill_level" value="advanced" tabindex="4"'; if (!is_null($userData) && strcmp($userData->getSkillLevel(), UserData::$SKILL_LEVELS['1']) == 0) { echo "checked"; } echo '>Advanced'; echo '<input type="radio" name="skill_level" value="expert" tabindex="5"'; if (!is_null($userData) && strcmp($userData->getSkillLevel(), UserData::$SKILL_LEVELS['2']) == 0) { echo "checked"; } echo '>Expert' . "\n"; echo '<span class="error">' . "\n"; if (!is_null($userData)) { echo $userData->getError('skill_level'); } echo '</span><br><br>' . "\n"; if (!is_null($userData)) { echo $userData->getError('skill_area') . '<br>'; } echo '<fieldset>' . "\n"; echo '<legend>Skill Areas</legend>' . "\n"; echo '<input type="checkbox" name="skill_areas[]" value="system-design" tabindex="6"'; if (!is_null($userData) && in_array("system-design", $userData->getSkillAreas())) { echo "checked"; } echo '>system-design'; echo '<input type="checkbox" name="skill_areas[]" value="programming" tabindex="7"'; if (!is_null($userData) && in_array("programming", $userData->getSkillAreas())) { echo "checked"; } echo '>programming'; echo '<input type="checkbox" name="skill_areas[]" value="machining" tabindex="8"'; if (!is_null($userData) && in_array("machining", $userData->getSkillAreas())) { echo "checked"; } echo '>machining'; echo '<input type="checkbox" name="skill_areas[]" value="soldering" tabindex="9"'; if (!is_null($userData) && in_array("soldering", $userData->getSkillAreas())) { echo "checked"; } echo '>soldering'; echo '<input type="checkbox" name="skill_areas[]" value="wiring" tabindex="10"'; if (!is_null($userData) && in_array("wiring", $userData->getSkillAreas())) { echo "checked"; } echo '>wiring'; echo '<input type="checkbox" name="skill_areas[]" value="circuit-design" tabindex="11"'; if (!is_null($userData) && in_array("circuit-design", $userData->getSkillAreas())) { echo "checked"; } echo '>circuit-design'; echo '<input type="checkbox" name="skill_areas[]" value="power-systems" tabindex="12"'; if (!is_null($userData) && in_array("power-systems", $userData->getSkillAreas())) { echo "checked"; } echo '>power-systems'; echo '<input type="checkbox" name="skill_areas[]" value="computer-vision" tabindex="13"'; if (!is_null($userData) && in_array("computer-vision", $userData->getSkillAreas())) { echo "checked"; } echo '>computer-vision'; echo '<input type="checkbox" name="skill_areas[]" value="ultrasonic" tabindex="14"'; if (!is_null($userData) && in_array("ultrasonic", $userData->getSkillAreas())) { echo "checked"; } echo '>ultrasonic'; echo '<input type="checkbox" name="skill_areas[]" value="infrared" tabindex="15"'; if (!is_null($userData) && in_array("infrared", $userData->getSkillAreas())) { echo "checked"; } echo '>infrared'; echo '<input type="checkbox" name="skill_areas[]" value="gps" tabindex="16"'; if (!is_null($userData) && in_array("gps", $userData->getSkillAreas())) { echo "checked"; } echo '>GPS'; echo '<input type="checkbox" name="skill_areas[]" value="compass" tabindex="17"'; if (!is_null($userData) && in_array("compass", $userData->getSkillAreas())) { echo "checked"; } echo '>compass' . "\n"; echo '</fieldset><br>' . "\n"; echo 'Profile Picture: <input type="file" name="profile_pic" accept="image/*" tabindex="18">'; if (!is_null($userData)) { echo $userData->getError('profile_pic'); } echo '<br><br>'; echo 'Started Robotics: <input type="date" name="started_hobby" min="1970-01-01" max="'; echo 'date("Y-m-d")'; echo 'tabindex="19"'; if (!is_null($userData) && !empty($userData->getStartedHobby())) { echo 'value="' . $userData->getStartedHobby() . '"'; } echo '>' . "\n"; if (!is_null($userData)) { echo $userData->getError('started_hobby'); } echo '<br><br>'; echo 'Favorite Color: <input type="color" name="fav_color" tabindex="20"'; if (!is_null($userData) && !empty($userData->getFavColor())) { echo 'value="' . $userData->getFavColor() . '"'; } echo '>' . "\n"; if (!is_null($userData)) { echo $userData->getError('fav_color'); } echo '<br><br>' . "\n"; echo 'URL: <input type="url" name="url" tabindex="21"'; if (!is_null($userData)) { echo 'value="' . $userData->getUrl() . '"'; } echo '>'; if (!is_null($userData)) { echo $userData->getError('url'); } echo '<br><br>' . "\n"; echo 'Telephone: <input type="tel" name="phone" tabindex="22"'; if (!is_null($userData)) { echo 'value="' . $userData->getPhone() . '"'; } echo '>' . "\n"; if (!is_null($userData)) { echo $userData->getError('phone'); } echo '<br><br>' . "\n"; echo '<p><input type="submit" name="submit" value="Submit">'; echo '</form>'; MasterView::showFooter(); MasterView::showPageEnd(); }
// include_once("../models/UserData.class.php"); // include_once("../models/Skill.class.php"); // include_once("../models/UserDataDB.class.php"); // include_once("../models/Database.class.php"); ?> <h2>It should call show() without crashing</h2> <?php $validUserData = array("user_name" => "Admiral_Ackbar", "skill_level" => "expert", "skill_areas" => array("system-design", "programming", "wiring"), "profile_pic" => "ackbar.jpg", "started_hobby" => "1983-05", "fav_color" => "#ff0000", "url" => "http://www.itsatrap.com", "phone" => "210-458-4436"); $sampleUser = new UserData($validUserData); ProfileView::show($sampleUser); ?> <h2>It should print all user information</h2> <?php $allUsers = UsersDB::getUsersBy(); foreach ($allUsers as $user) { //print username and pass echo '<p>'; echo 'User: '******'UserData: '; $userData = UserDataDB::getUserDataBy('userId', $user->getUserId()); print_r($userData); //print robots echo '</p>'; } ?> </body> </html>
public static function updateUser($user) { // Update a user try { $db = Database::getDB(); if (is_null($user) || $user->getErrorCount() > 0) { return $user; } $checkUser = UsersDB::getUsersBy('userID', $user->getUserID()); if (empty($checkUser)) { $tournament->setError('userID', 'USER_DOES_NOT_EXIST'); } if ($user->getErrorCount() > 0) { return $user; } // $query = "UPDATE Users SET userName = :userName, firstName = :firstName, lastName = :lastName, email = :email, battleTag = :battleTag, rank = :rank, passWord = :passWord, favHeros = :favHeros, gender = :gender // WHERE userID = :userID"; $query = "UPDATE Users SET userName = :userName, rank = :rank\r\n\t\t\t WHERE userID = :userID"; $statement = $db->prepare($query); $statement->bindValue(":userName", $user->getUsername()); // $statement->bindValue(":firstName", $user->getFirstName()); // $statement->bindValue(":lastName", $user->getLastName()); // $statement->bindValue(":email", $user->getEmail()); // $statement->bindValue(":battleTag", $user->getBattleTag()); $statement->bindValue(":rank", $user->getRank()); // $statement->bindValue(":passWord", $user->getPassword()); // $statement->bindValue(":favHeros", $user->getFavHeros()); // $statement->bindValue(":gender", $user->getGender()); $statement->bindValue(":userID", $user->getUserID()); $statement->execute(); $statement->closeCursor(); } catch (Exception $e) { // Not permanent error handling echo "<p>Error updating user" . $e->getMessage() . "</p>"; } return $user; }
public function testUpdateUsername() { $myDb = DBMaker::create('sensordatarepotest'); Database::clearDB(); $db = Database::getDB('sensordatarepotest', 'C:\\xampp\\myConfig.ini'); $testUserId = 1; $users = UsersDB::getUsersBy('user_id', $testUserId); $user = $users[0]; $params = $user->getParameters(); $this->assertEquals($user->getUsername(), 'jabituya', 'Before the update is should have username jabituya'); $params['username'] = '******'; $newUser = new User($params); $newUser->setUserId($testUserId); $updatedUser = UsersDB::updateUser($newUser); $this->assertEquals($updatedUser->getUsername(), $params['username'], 'After the update it should have username ' . $params['username']); $this->assertTrue(empty($updatedUser->getErrors()), 'The updated user should have no errors'); }
public static function updateUser($user) { try { $db = Database::getDB(); if (is_null($user) || $user->getErrorCount() > 0) { return $user; } $checkUser = UsersDB::getUsersBy('userId', $user->getUserId()); if (empty($checkUser)) { $user->setError('userId', 'USER_DOES_NOT_EXIST'); } if ($user->getErrorCount() > 0) { return $user; } $query = "UPDATE Users SET email = :email, password = :password\r\n\t\t\t\t\tWHERE userId = :userId"; $statement = $db->prepare($query); $statement->bindValue(":email", $user->getEmail()); $statement->bindValue(":password", $user->getPassword()); $statement->bindValue(":userId", $user->getUserId()); $statement->execute(); $statement->closeCursor(); } catch (Exception $e) { $user->setError('userId', 'USER_COULD_NOT_BE_UPDATED'); } return $user; }
echo "No User with this telephone number"; } else { echo "The value of User with a specified telephone number is:<br>{$user}<br>"; } ?> <h2>It should get a user name by user id</h2> <?php DBMaker::create('ptest'); Database::clearDB(); $db = Database::getDB('ptest'); $userNames = UsersDB::getUserValuesBy('userName', 'userId', 1); print_r($userNames); ?> <h2>It should allow update of the user name</h2> <?php DBMaker::create('ptest'); Database::clearDB(); $db = Database::getDB('ptest'); $users = UsersDB::getUsersBy('userId', 1); $user = $users[0]; echo "<br>Before update: {$user} <br>"; $parms = $user->getParameters(); $parms['userName'] = '******'; $newUser = new User($parms); $newUser->setUserId(1); $user = UsersDB::updateUser($newUser); echo "<br>After update: {$user} <br>"; ?> </body> </html>
$users = UsersDB::getUsersBy('userId', '3'); echo "The value of User 3 is:<br>{$users['0']}<br>"; ?> <h2>It should not get a User not in Users</h2> <?php $users = UsersDB::getUsersBy('userName', 'Alfred'); if (empty($users)) { echo "No User Alfred"; } else { echo "The value of User Alfred is:<br>{$users['0']}<br>"; } ?> <h2>It should not get a User by a field that isn't there</h2> <?php $users = UsersDB::getUsersBy('telephone', '21052348234'); if (empty($users)) { echo "No User with this telephone number"; } else { echo "The value of User with a specified telephone number is:<br>{$user}<br>"; } ?> <h2>It should get a user name by user id</h2> <?php $userNames = UsersDB::getUserValuesBy('userId', 1, 'userName'); print_r($userNames); ?> </body> </html>