From 99e60dae1bb5825a426852860e67b9d00e124161 Mon Sep 17 00:00:00 2001 From: Horus3 Date: Sun, 16 Mar 2014 17:58:05 +0100 Subject: Redesigned login and register function. --- www/functions/func_register.php | 91 +++++++++++++++++++---------------------- 1 file changed, 42 insertions(+), 49 deletions(-) (limited to 'www/functions/func_register.php') diff --git a/www/functions/func_register.php b/www/functions/func_register.php index 690e5d6..0555470 100755 --- a/www/functions/func_register.php +++ b/www/functions/func_register.php @@ -1,73 +1,66 @@ query("SELECT status FROM user WHERE email='" . $safe_email . "';"); - $test_status_ar = $test_status_db->fetchArray(SQLITE3_NUM); - $test_status_int = $test_status_ar[0]; + $test_status_db = $db->query("SELECT status FROM user WHERE email='" . $safe_email . "';"); + $test_status_ar = $test_status_db->fetchArray(SQLITE3_NUM); + $test_status_int = $test_status_ar[0]; - $test_key_db = $db->query("SELECT key FROM user WHERE email='" . $safe_email . "';"); - $test_key_ar = $test_key_db->fetchArray(SQLITE3_NUM); - $test_key = $test_key_ar[0]; + $test_key_db = $db->query("SELECT key FROM user WHERE email='" . $safe_email . "';"); + $test_key_ar = $test_key_db->fetchArray(SQLITE3_NUM); + $test_key = $test_key_ar[0]; - if (empty($test_status_ar) || $test_status_int != 0 || $test_key != $_POST["key"] || $test_key == ""){ - header("Refresh: 0; /register?reason=prohibited"); - return false; - } else { + if (empty($test_status_ar) || $test_status_int != 0 || $test_key != $_POST["key"] || $test_key == ""){ + return "prohibited"; + } - $id_db = $db->query("SELECT id FROM user WHERE email='" . $safe_email . "';"); - $id_ar = $id_db->fetchArray(SQLITE3_NUM); - $id = $id_ar[0]; + $id_db = $db->query("SELECT id FROM user WHERE email='" . $safe_email . "';"); + $id_ar = $id_db->fetchArray(SQLITE3_NUM); + $id = $id_ar[0]; /*Generates the encrypted password and the database transactions*/ - $pepper = file_get_contents("../database/pepper.txt"); - $password = $cleartext_password . $pepper; + $pepper = file_get_contents("../database/pepper.txt"); + $password = $cleartext_password . $pepper; + + $hash_password = password_hash($password, PASSWORD_DEFAULT); - $hash_password = password_hash($password, PASSWORD_DEFAULT); + if($db->exec(" + BEGIN TRANSACTION; + UPDATE user SET name='" . $safe_name . "', password='" . $hash_password . "', invites=5, status=1, register=(SELECT datetime()) WHERE id=" . $id . "; + INSERT INTO files (id, parent, owner, name, folder, mime, size, share, size, hash) VALUES (NULL, 0, $id, '/', 'DIRECTORY', NULL, NULL, 'PUBLIC', 0, ''); + COMMIT;") + ){ - if($db->exec(" - BEGIN TRANSACTION; - UPDATE user SET name='" . $safe_name . "', password='" . $hash_password . "', invites=5, status=1, register=(SELECT datetime()) WHERE id=" . $id . "; - INSERT INTO files (id, parent, owner, name, folder, mime, size, share, size, hash) VALUES (NULL, 0, $id, '/', 'DIRECTORY', NULL, NULL, 'PUBLIC', 0, ''); - COMMIT;") - ){ - $_SESSION["login"] = true; - $_SESSION["username"] = $name; + $userid = user($db, $safe_name); - header("Refresh: 0; /"); - return true; + $_SESSION["login"] = true; + $_SESSION["username"] = $name; + $_SESSION["userid"] = $userid; - } else { - header("Refresh: 0; /register?reason=database"); - return false; - } - } + return "success"; - } else { - include("register.php"); - return false; + } else { + return "database"; } + } -- cgit v1.2.3