Добро пожаловать на Pawno-Info.Ru - Портал о программировании №1

Присоединяйтесь к нам сейчас, чтобы получить доступ ко всем нашим функциям. После регистрации и входа в систему вы сможете создавать темы, публиковать ответы в существующих темах, давать репутацию своим коллегам, получать собственный личный мессенджер и многое другое. Это также быстро и совершенно бесплатно, так чего же вы ждете?

Маппинг для сервера

Если вы хотите обновить Ваш сервер новыми доработками - то зайдите в наш раздел. Большой выбор готовых решений от наших пользователей

Моды для сервера

Огромный выбор различных модификаций для Вашего сервера. пролистайте эти темы! Возможно именно там Вы найдете то, что искали уже давно.

Модификации SA

Хотите разнообразить свою игру в San Andrease? Смелее в наш раздел. Отличный сборник готовых решений. Играйте с удовольствием

qwnofear

Начинающий
Пользователь
Регистрация
5 Авг 2020
Сообщения
24
Лучшие ответы
1
Реакции
5
Добрый день уважаемые пользователи pawno-info.ru!
Взял готовый код авторизации, подключил к сайту, но при вводе данных не входит в личный кабинет, то есть ввожу логин, пароль, нажимаю кнопку входа и ничего не происходит.

Код authorization.php:

PHP:
<?
require 'config.php';
if(isset($_POST['login']))
{  
    $name = $_POST['nick'];
    $password = $_POST['password'];
    $search = mysqli_query("SELECT * FROM `".$account['table']."` WHERE `".$account['name']."`='$name'");
    if(mysqli_num_rows($search)!=0)
    {
        $user = mysqli_fetch_array($search);
        if($user["".$account['pass'].""]==$password)
        {
            setcookie("pass", md5(md5($password)).":".$name, time() + 60*100, "/");
            header("Location: ./");
        }
        else
        {
           
            $info_pass="<div class=\"alert alert-danger\">
  <strong>Ошибка!</strong> Пароль не правильный.
</div>";
        }

    }
    else
    {
        $info_user = "<div class=\"alert alert-danger\">
  <strong>Ошибка!</strong> Игрок не найден.
</div>";
    }
}
if($_GET["access"]=="exit"){
    setcookie("pass", "", "0", "/");
    header("Location: ./login.php");
}  
?>
Код login.php:

PHP:
<?php

require '../engine/authorization.php';
if(!(empty($_COOKIE["pass"]) || $_COOKIE["pass"]=="")) return header("Location: ./");

$template =
     str_replace(array(
            '{%isclass%}'
        ),
        array(
        ),
        file_get_contents('../templates/header.tpl')) .
     str_replace(array(
            '{%isclass%}'
        ),
        array(
        ),
        file_get_contents('../templates/login.tpl')) .
        str_replace(array(
            '{%footer%}',
        ),
        array(
        ),
        file_get_contents('../templates/footer.tpl'));

    exit($template);
?>
UPD: Код login.tpl:

PHP:
<section id="login" class="login">
        <div class="container">
            <h1 class="main__text">Авторизация</h1>
            <p class="main-p">Вход в аккаунт</p>

            <div class="auth__index">
                <div class="auth-table">
                    <div class="form-group">
                        <?=$info_user?>
                        <?=$info_pass?>
                        <input type="text" name="nick" required="" placeholder="Введите ник" class="l-input">
                        <input type="password" name="password" required placeholder="Введит пароль" class="l-input">
                        <button type="submit" name="login" class="btn btn-s">Войти</button>
                    </div>
                    <a class="what-password" href="">Забыли пароль?</a>
                </div>
            </div>

        </div>
    </section>
 

Maxim_Lovly

• Зарегистрированный •
Регистрация
4 Апр 2021
Сообщения
22
Лучшие ответы
0
Реакции
1
Я так понял у вас отправка формы через AJAX можно код из JS?
И гляньте в консоль браузера после нажатия кнопки, есть ли ошибки?
 

qwnofear

Начинающий
Пользователь
Регистрация
5 Авг 2020
Сообщения
24
Лучшие ответы
1
Реакции
5
Я так понял у вас отправка формы через AJAX можно код из JS?
И гляньте в консоль браузера после нажатия кнопки, есть ли ошибки?
Как я и сказал, код не мой, но вот ошибки, которые выдаёт:

Код:
[Mon Apr 05 13:46:08.394372 2021] [php7:notice] [pid 11459] [client 46.191.204.202:44532] PHP Notice:  Constant DB_HOST already defined in /var/www/fa063859/data/www/site-rp.ru/engine/config.php on line 2, referer: http://site-rp.ru/cp/login
[Mon Apr 05 13:46:08.394441 2021] [php7:notice] [pid 11459] [client 46.191.204.202:44532] PHP Notice:  Constant DB_USER already defined in /var/www/fa063859/data/www/site-rp.ru/engine/config.php on line 3, referer: http://site-rp.ru/cp/login
[Mon Apr 05 13:46:08.394454 2021] [php7:notice] [pid 11459] [client 46.191.204.202:44532] PHP Notice:  Constant DB_PASS already defined in /var/www/fa063859/data/www/site-rp.ru/engine/config.php on line 4, referer: http://site-rp.ru/cp/login
[Mon Apr 05 13:46:08.394466 2021] [php7:notice] [pid 11459] [client 46.191.204.202:44532] PHP Notice:  Constant DB_BASE already defined in /var/www/fa063859/data/www/site-rp.ru/engine/config.php on line 5, referer: http://site-rp.ru/cp/login
[Mon Apr 05 13:46:08.395383 2021] [php7:notice] [pid 11459] [client 46.191.204.202:44532] PHP Notice:  Undefined index: access in /var/www/fa063859/data/www/site-rp.ru/engine/authorization.php on line 32, referer: http://site-rp.ru/cp/login
2021/04/05 13:46:08 [warn] 31433#31433: *11005 an upstream response is buffered to a temporary file /var/cache/nginx/proxy_temp/0/02/0000000020 while reading upstream, client: 46.191.204.202, server: site-rp.ru, request: "GET /favicon.ico HTTP/1.1", upstream: "http://127.0.0.1:8080/favicon.ico", host: "site-rp.ru", referrer: "http://site-rp.ru/cp/login.php"
 

Serg_Brain

✩ Администратор ✩
Команда форума
Administrator
Регистрация
15 Янв 2012
Сообщения
4,090
Лучшие ответы
5
Реакции
588
  • Герой PI
  • Верность PI
  • Web-разработчик
  • OLD
  • Активный модератор
@qwnofear, в конфиге у вас объявлены константы со значениями подключения, после чего вы их опять объявляете из-за чего возникают данные ошибки. (1-4 notice)
 

qwnofear

Начинающий
Пользователь
Регистрация
5 Авг 2020
Сообщения
24
Лучшие ответы
1
Реакции
5
@qwnofear, в конфиге у вас объявлены константы со значениями подключения, после чего вы их опять объявляете из-за чего возникают данные ошибки. (1-4 notice)
Вот код config.php:

PHP:
<?
define("DB_HOST","localhost");
define("DB_USER","user");
define("DB_PASS","123");
define("DB_BASE","base");
$_MS = mysqli_connect(DB_HOST,DB_USER,DB_PASS,DB_BASE)
or die("NO CONNECT FOR DATABASE");

$account = array (
    'table' => 'account',
    'pass' => 'Password',
    'name' => 'Name',
    'level' => 'Level',
    'exp' => 'Exp',
    'cash' => 'Cash',
    'bank' => 'Bank',
    'id' => 'id'
    );
?>
В чём может быть проблема? :)
 

IOPlayer

Начинающий
Пользователь
Регистрация
8 Июл 2016
Сообщения
66
Лучшие ответы
4
Реакции
21
@qwnofear, в конфиге у вас объявлены константы со значениями подключения, после чего вы их опять объявляете из-за чего возникают данные ошибки. (1-4 notice)
это не ошибки, а Notice, которые никак не влияют на работу, а вызваны скорее всего тем, что файл конфига вызывается где то ещё. Исправить notice можно добавив require_once вместо require в тех местах где вызывается файл конфига.

А причина по которой не работает сама авторизация - надо разбираться, ещё не смотрел
 

qwnofear

Начинающий
Пользователь
Регистрация
5 Авг 2020
Сообщения
24
Лучшие ответы
1
Реакции
5
это не ошибки, а Notice, которые никак не влияют на работу, а вызваны скорее всего тем, что файл конфига вызывается где то ещё. Исправить notice можно добавив require_once вместо require в тех местах где вызывается файл конфига.

А причина по которой не работает сама авторизация - надо разбираться, ещё не смотрел
config.php вызывается в authorization.php и auth.php

p.s в таком случае, приложу ещё код auth.php

PHP:
<?
include '../engine/config.php';
if(empty($_COOKIE["pass"]) || $_COOKIE["pass"]==""){
    header("Location: login.php");
}
else{
    $per = explode(":", $_COOKIE["pass"]);
    $pass_md5 = $per[0];
    $login = $per[1];
$search = mysqli_query("SELECT * From ".$account['table']." WHERE ".$account['name']."='$login'");
$user = mysqli_fetch_array($search);
    if($pass_md5 != md5(md5($user["".$account['pass'].""]))){
        setcookie("pass", "", 0, "/");
        header("Location: login.php");
    }
}
?>
 

FrostLike548

• Зарегистрированный •
Регистрация
18 Окт 2020
Сообщения
187
Лучшие ответы
0
Реакции
0
Тоже прямо сейчас столкнулся с такой ошибкой. Посмотри ты там случаем DB и User`a не путаешь? :D
 

qwnofear

Начинающий
Пользователь
Регистрация
5 Авг 2020
Сообщения
24
Лучшие ответы
1
Реакции
5
Нашёл свою проблему:

В login.tpl не прописал

PHP:
<form action="" method="POST">
</form>
Всем спасибо, закрыто. :)
 
shape1
shape2
shape3
shape4
shape7
shape8
Сверху Снизу