• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dodanie Errorów do spana w panelu logowania

Object Storage Arubacloud
0 głosów
124 wizyt
pytanie zadane 21 sierpnia 2018 w PHP przez rejzer Użytkownik (680 p.)

w jaki sposób mogę dodać do spana dany error gdy do niego dojdzie podczas próby logowania?

do <span id="error" style="width: 300px; display: block; color: red;"> (TUTAJ CHCĘ WPROWADZIĆ DANE ERRORY GDY DO NICH DOJDZIE) </span>

kod php: 

    if (empty($realname) || empty($password)) {
        header("Location: ../index.php?login=empty");
        $error_empty = 'Zostawiłeś co najmniej 1 puste pole! popraw błąd';
        exit();
    } else {
        $sql = "SELECT * FROM authme WHERE realname='$realname'";
        $result = mysqli_query($conn, $sql);
        $resultCheck = mysqli_num_rows($result);
        if ($resultCheck < 1) {
            header("Location: ../index.php?login=errorrealname");
            $error_realname = 'Nie ma takiego użytkownika! Sprawdź jeszcze raz';
            exit();
        } 
        else {
            if ($row = mysqli_fetch_assoc($result)) {
                
                                // https://stackoverflow.com/questions/32426890/check-if-sha256-hashed-password-in-mysql-is-correct-in-login-form-not-working
                                function checkPassword($password, $db_password) {
                                        $parts = explode('$', $db_password);
                                        $salt = $parts[2];
                                        $hashed = hash('sha256',hash('sha256', $password).$salt);
                                        $hashed = '$SHA$'.$salt.'$'.$hashed;
                                        return ($hashed == $db_password) ? true : false;
                                }
                                
                if(!checkPassword($password, $row['password'])) {
                    header("Location: ../index.php?login=errorpassword");
                    $error_password = 'Złe hasło! proszę poprawić';
                    exit();
                } 

Formularz logowania:

            <form id="login-page" action="../sources/admin-files/php/login-panel/login.inc.php" method="POST">
              <fieldset>
              <span id="error" style="width: 300px; display: block; color: red;"></span>
                <h2>Zaloguj się kontem: Non Premium</h2>
<!-- NICKNAME MINECRAFT -->
                <label>Nickname:</label><br>
                <input class="realname" type="text" placeholder="Kowal99" name="realname"><br>
<!-- PASSWORD MINECRAFT -->
                <label>Hasło:</label><br>
                <input class="password" type="password" placeholder="haslo321" name="password"><br>
                <button class="submit" type="submit" name="submit" style="width: 150px">Zaloguj Się</button>
              <fieldset>
            <form>

 

1 odpowiedź

0 głosów
odpowiedź 21 sierpnia 2018 przez StOcK Mądrala (6,100 p.)
Hmmm.

Masz 2 możliwości, albo wywołać kod PHP tak jak do tej pory, albo przez Ajax.

Jeśli wybierzesz pierwszą opcję, to przed formularzem sprawdź, czy został wysłany, jeśli tak to sprawdź dane z formularza, i dodaj np do tablicy listę błędów. Później podczas wyświetlania formularza wyświetl te bledy. Jeśli zwrócisz że skryptu dane za pomocą GET to możesz się do nich dostać za pomocą $_GET['zmienna']

Jeśli przez Ajax to wysyłasz formularz ajaxem do skryptu PHP, tam sprawdzasz dane i zwracasz rezultat. Rezultat najlepiej w formie JSON (echo json_encode). Zwrócone dane możesz obrobić w js i dynamicznie wyświetlić błędy

Podobne pytania

0 głosów
0 odpowiedzi 129 wizyt
pytanie zadane 15 kwietnia 2019 w PHP przez Przemek2001 Nowicjusz (220 p.)
0 głosów
1 odpowiedź 138 wizyt
pytanie zadane 15 września 2020 w PHP przez Sogipe Użytkownik (500 p.)
0 głosów
1 odpowiedź 184 wizyt
pytanie zadane 2 lipca 2020 w PHP przez Ebay_05 Początkujący (400 p.)

92,572 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...