Esempio n. 1
0
        return False;
    }
}
function is_name_correct($name)
{
    if ($name && preg_match('#.{2}#', $name)) {
        return True;
    } else {
        return False;
    }
}
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $name = isset($_POST['name']) ? $model['escape']($_POST['name']) : NULL;
    $password = isset($_POST['password']) ? $model['escape']($_POST['password']) : NULL;
    if (is_name_correct($name) && !$model['user']['is_exists']($name)) {
        if (is_password_correct($password)) {
            $password = password_hash($password, PASSWORD_DEFAULT);
            if ($model['user']['add']($name, $password)) {
                $user = $model['user']['get']($name);
                login_user($user);
            } else {
                $error = $model['get_last_error']();
            }
        } else {
            $error = 'Invalid password.';
        }
    } else {
        $error = 'User is already registered.';
    }
    if ($is_ajax) {
        echo !empty($error) ? $error : 'OK';
Esempio n. 2
0
<?php

include "header.php";
?>

<!-- login/sign up/log out state -->
<div class="login-state">
    <div class="login-state-info">

    <?php 
$email = $_POST["email"];
$password = $_POST["password"];
if (is_password_correct($email, $password)) {
    // start the session, remember the user name
    session_start();
    $db = new PDO("mysql:dbname=database; host=localhost", "root", "root");
    $email = $db->quote($email);
    $rows = $db->query("SELECT * FROM user WHERE email = {$email}");
    foreach ($rows as $row) {
        $_SESSION["username"] = $row["username"];
    }
    ?>
            <p>Login successful! Welcome back <?php 
    echo $_SESSION["username"];
    ?>
</p>
            <?php 
} else {
    ?>
            <p>Sorry, incorrect user name or password.</p>
            <?php 
Esempio n. 3
0
    stderr("Ошибка входа", $text);
}
function is_password_correct($password, $secret, $hash)
{
    return $hash == md5($secret . $password . $secret) || $hash == md5($secret . trim($password) . $secret);
    // А нахуя вторая часть? Дебилы вводят из писем пароли с пробелом в конце/начале
}
$res = sql_query("SELECT id, passhash, secret, enabled, status FROM users WHERE username = "******"Вы не зарегистрированы в системе.");
}
if ($row["status"] == 'pending') {
    bark("Вы еще не активировали свой аккаунт! Активируйте ваш аккаунт и попробуйте снова.");
}
if (!is_password_correct($password, $row['secret'], $row['passhash'])) {
    bark();
}
if ($row["enabled"] == "no") {
    bark("Этот аккаунт отключен.");
}
$peers = sql_query("SELECT COUNT(id) FROM peers WHERE userid = {$row['id']}");
$num = mysql_fetch_row($peers);
$ip = getip();
if ($num[0] > 0 && $row[ip] != $ip && $row[ip]) {
    bark("Этот пользователь на данный момент активен с другого IP. Вход невозможен.");
}
logincookie($row["id"], $row["passhash"]);
if (!empty($_POST["returnto"])) {
    header("Location: {$DEFAULTBASEURL}/{$_POST['returnto']}");
} else {