Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /* Funkce pro přihlášení, registraci, a logování přihlášení */
- $salt = "salt";
- // Petr Jirouš
- function registerUser($username, $password, $email) {
- // registrace uživatele
- // kontrola prázdných hodnot
- if ( empty($username) || empty($password) || empty($email) ) {
- // přesměrovaní na registraci
- // header("Location: register.php");
- die("Prázdné hodnoty.");
- }
- $usernameLen = strlen(trim($username));
- $passwordLen = strlen(trim($password));
- // kontrola délky hesla
- if( $passwordLen < 4 || $passwordLen > 128 ) {
- // přesměrování na registraci
- // header("Location: register.php");
- die("Délka hesla musí být od 4 do 128 znaků.");
- }
- // kontrola délky uživatelského jména
- if( $usernameLen < 5 || $username > 50 ) {
- // přesměrování na registraci
- // header("Location: register.php");
- die("Délka uživatelského jména musí být od 5 do 5O znaků.");
- }
- // kontrola správně zadaného emailu
- if( preg_match("/^([.0-9a-z_-]+)@(([0-9a-z-]+\.)+[0-9a-z]{2,4})$/i", $email) == 0 ) {
- // přesměrování na registraci
- // header("Location: register.php");
- die("Nesprávně zadaný email.");
- }
- $username = mysql_real_escape_string($username);
- $password = mysql_real_escape_string($password);
- $email = mysql_real_escape_string($email);
- $hashedPassword = sha1($GLOBALS['salt'] . trim($password));
- unset($password);
- $insertQuery = "INSERT INTO `users` (`username`, `password`, `email`, `time`)
- VALUES ('{$username}', '{$hashedPassword}', '{$email}', NOW())";
- if( mysql_query($insertQuery) == FALSE ) {
- // přesměrování na registraci
- // header("Location: register.php");
- die("Nepodařilo se zapsat údaje do databáze.");
- var_dump($insertQuery);
- } else {
- // registrace proběhla úspěšně
- }
- }
- // Petr Jirouš
- function loginUser($username, $password) {
- // přihlášení uživatele
- $username = mysql_real_escape_string($username);
- $selectQuery = "SELECT `id`, `password` FROM `users` WHERE `username` = '{$username}'";
- $resultArray = @mysql_fetch_array(mysql_query($selectQuery));
- $hashedPassword = sha1($GLOBALS['salt'] . trim($password));
- if( empty($resultArray['id']) ) {
- loginUserLog($username, 0);
- die("Uživatel neexistuje.");
- }
- if( $resultArray['password'] == $hashedPassword ) {
- session_start();
- session_register("loggedId");
- $_SESSION['loggedId'] = $resultArray['id'];
- // přesměrování na stránku gameModulu
- // header("Location: gameModule.php");
- // die("success");
- echo "success";
- loginUserLog($username, 1);
- } else {
- loginUserLog($username, 0);
- die("Špatné heslo.");
- }
- }
- // Petr Jirouš
- function loginUserLog($username, $success) {
- // slouží k zapsání všech pokusů o přihlášení do DB
- $username = mysql_real_escape_string($username);
- $success = mysql_real_escape_string($success);
- $insertQuery = "INSERT INTO `logins` (`username`, `ipAddress`, `time`, `success`)
- VALUES ('{$username}', '{$_SERVER['REMOTE_ADDR']}', NOW(), '{$success}')";
- if( mysql_query($insertQuery) == FALSE ) {
- // přesměrování
- die("Chyba při zapisování do logu.");
- } else {
- // úspěšné zapsání do logu
- }
- }
Add Comment
Please, Sign In to add comment