За последние 24 часа нас посетили 6593 программиста и 523 робота. Сейчас ищут 124 программиста ...

регестрация на php

Тема в разделе "PHP для новичков", создана пользователем kristian1998, 13 мар 2018.

  1. kristian1998

    kristian1998 Новичок

    С нами с:
    13 мар 2018
    Сообщения:
    4
    Симпатии:
    0
    как сделать так чтобы когда входил под данными которые ты зарегестрировал, логин указанный при регестрации автоматически забивался в поле имя и не требовалось вводить постоянно ( я не давно только начал этим заниматься поэтому совсем не оптыный, помогите, если надо могу скинуть данные хостинга)
    ссылка: http://k96501ls.beget.tech/chat/index.php
    код:


    <?php
    $dbc = mysqli_connect('localhost', 'k96501ls_ketros', '12344321', 'k96501ls_ketros');
    if(isset($_POST['sumbit'])) {
    include("signup.php");

    }
    if(!isset($_COOKIE['user_id'])) {
    if(isset($_POST['submit'])) {
    $user_username = mysqli_real_escape_string($dbc, trim($_POST['username']));
    $user_password = mysqli_real_escape_string($dbc, trim($_POST['password']));
    if(!empty($user_username) && !empty($user_password)) {
    $query = "SELECT `user_id` , `username` FROM `signup` WHERE username = '$user_username' AND password = SHA('$user_password')";
    $data = mysqli_query($dbc,$query);
    if(mysqli_num_rows($data) == 1) {
    $row = mysqli_fetch_assoc($data);
    setcookie('user_id', $row['user_id'], time() + (60*60*24*30));
    setcookie('username', $row['username'], time() + (60*60*24*30));
    $home_url = 'http://k96501ls.beget.tech/chat/index1.php' . $_SERVER['HTTP_HOST'];
    header('Location: '. $home_url);
    }
    else {
    echo 'Извините, вы должны ввести правильные имя пользователя и пароль';
    }
    }
    else {
    echo 'Извините вы должны заполнить поля правильно';
    }
    }

    }
    ?>
    .<html>
    <head>
    <title>Онлайн-Чат</title>

    <head>
    <link href="style.css" rel="stylesheet">
    </head>

    <!-- подключаем библиотеку jquery -->
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript">

    function show() {
    // выводим сообщения в блок #messages
    $.ajax({
    url: 'show.php',
    timeout: 10000, // время ожидания загрузки сообщений 10 секунд (или 10000 миллисекунд)
    success: function(data) {
    $('#messages').html(data);
    },
    error: function() {
    $('#messages').html("Не удалось загрузить сообщения");
    }
    });
    }

    function send() {
    // функция отправки сообщения
    var sender = $('#sender').val(); // отправитель
    var message = $('#message').val(); // сообщение

    if(sender.length > 0 && message.length > 0) { // проверка полей "Имя" и "Сообщение"
    $.ajax({
    url: 'send.php',
    type: 'post',
    timeout: 10000, // время ожидания отправки сообщения 10 сек.
    data: {'sender': sender, 'message': message},
    success: function(data) {
    document.getElementById('message').value = ""; // удаляем содержимое поля "Сообщение", если сообщение было успешно отправлено
    $('#send_message_result').html("");
    },
    error: function() {
    $('#send_message_result').html("Не удалось отправить сообщение");
    }
    });
    } else if(sender.length == 0) {
    $('#send_message_result').html("Введите своё имя!");
    } else if(message.length == 0) {
    $('#send_message_result').html("Введите сообщение!");
    }
    }

    var interval = 1000; // количество миллисекунд для авто-обновления сообщений (1 секунда = 1000 миллисекунд)

    show();

    setInterval('show()', interval);
    </script>
    </head>
    <link href="style.css" rel="stylesheet">
    <body>
    <div >
    <img class="articles1" src="images/ros.png">
    </div>
    <h1>Чат</h1>
    Имя<br>
    <input type="text" id="sender"><br><br>

    Сообщение<br>
    <textarea id="message" placeholder="Введите здесь ваше сообщение"></textarea><br><br>

    <input type="submit" onclick="send();" value="Отправить сообщение"><br><br>

    <div id="send_message_result"></div>
    <hr>
    <div id="messages"></div>
    <?php
    if(empty($_COOKIE['username'])) {
    ?>
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
    <label for="username">Логин:</label>
    <input type="text" name="username">
    <label for="password">Пароль:</label>
    <input type="password" name="password">
    <button type="submit" name="submit">Вход</button>
    <a href="signup.php">Регистрация</a>
    </form>
    <?php
    }
    else {
    ?>
    <p><a href="google.ru">Мой профиль</a></p>
    <p><a href="exit.php">Выйти(<?php echo $_COOKIE['username']; ?>)</a></p>
    <?php
    }
    ?>
    <footer class="clear">
    <p>Все права защищены</p>
    </footer>
    </body>
    </html>
     

    Вложения:

    • vQxEDFTKtVI.jpg
      vQxEDFTKtVI.jpg
      Размер файла:
      106,4 КБ
      Просмотров:
      3
  2. MouseZver

    MouseZver Старожил

    С нами с:
    1 апр 2013
    Сообщения:
    4.596
    Симпатии:
    741
    Адрес:
    Лень
    идентификацию делай
     
  3. kristian1998

    kristian1998 Новичок

    С нами с:
    13 мар 2018
    Сообщения:
    4
    Симпатии:
    0
    Не подскажешь как ? Может какой нибудь пример сможешь кинуть ?
     
  4. MouseZver

    MouseZver Старожил

    С нами с:
    1 апр 2013
    Сообщения:
    4.596
    Симпатии:
    741
    Адрес:
    Лень
    Если дам пример из личного склада, то наверняка с первой же строки утонешь в пространствах. Объяснить то объясню, но за выше изложенный код даже марать клавиши не стану. Проблема в том, копипастом кода толком ничего не добьешься, а в интернете уже миллион миллионов статей изложено как, что и почем. Лишь попкорном запастись, и учить. Вы же хотите ролтон
     
  5. kristian1998

    kristian1998 Новичок

    С нами с:
    13 мар 2018
    Сообщения:
    4
    Симпатии:
    0
    Да за меня то делать не нужно , я попросил подсказать , написал сюда чтобы найти людей опытных и знающих, которые точно знают как мне это реализовать и уже подскажут где и что учить и тд. Чтоб я не тупо в гугле пол дня потерял ищя непонятно что. И нет в этом коде не все копипаст , но часть точно и я не скрываю. Я с php никогда не работал, а тут вот пришлось с ним возиться , а я в нем ноль. Спасибо что подсказали что надо делать интедификацтю, но если можно , скиньте хотя бы ссылки если знаете, на материалы которые мне помогут , в интернете что то поискал но больше запутался
     
  6. MouseZver

    MouseZver Старожил

    С нами с:
    1 апр 2013
    Сообщения:
    4.596
    Симпатии:
    741
    Адрес:
    Лень
    https://github.com/MouseZver/My-garbage-code/tree/master/Auth
    --- Добавлено ---
    при авторизации юзера - проверяем валидность всех данных, вплоть метода запроса, присутствие ошибочных уведомлений если что - то не достает из данных. В итоге верификацию пароля:

    вытаскиваем нужные данные...
    Код (Text):
    1. SELECT id, username, password FROM usraccount WHERE email = ?
    и верифицируем пароль с хешем с базы...
    PHP:
    1. <?php
    2.  
    3. password_verify ( ... )
    --- Добавлено ---
    https://php.net/manual/ru/function.password-verify.php
    --- Добавлено ---
    все пучком?
    куки заготавливаем - куки ( .., md5 ( $account -> id . $account -> username . $password_hash ), ... )
    и
    PHP:
    1. ...P( 'UPDATE usraccount SET password = ?, hash = ?, online = ? WHERE id = ' . $account -> id, [ $password_hash, $hash, $_SERVER['REQUEST_TIME'] ] );
    --- Добавлено ---
    PHP:
    1. $password_hash = password_hash ( $INPUTS[Aero::$app -> Auth -> form -> pass], PASSWORD_ARGON2I );
     
    kristian1998, _ne_scaju_ и AlexandrS нравится это.
  7. kristian1998

    kristian1998 Новичок

    С нами с:
    13 мар 2018
    Сообщения:
    4
    Симпатии:
    0
    Спасибо огромное , вы идеально объяснили ) Большое , спасибо )
     
  8. MouseZver

    MouseZver Старожил

    С нами с:
    1 апр 2013
    Сообщения:
    4.596
    Симпатии:
    741
    Адрес:
    Лень
    нежданчик
     
    webog нравится это.