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

PHP - Wiadomość zwrotna o błędzie logowania

Object Storage Arubacloud
0 głosów
560 wizyt
pytanie zadane 4 czerwca 2018 w PHP przez nielotweb Bywalec (2,240 p.)
Cześć! Mam jeden mały problem.

Robię system logowania w php'ie, i chcę wyświetlić wiadomość po złym wpisaniu danych, żeby się wyświetliła nad formularzem.

Niby zrobiłem to sesjami ale problem tkwi w tym że nie zawsze to działa dobrze ( nie kiedy się nie pojawia ) a drugi problem jest taki że po odświeżeniu strony chcę żeby ten błąd zniknął, a robiąc na sesjach ta wiadomość dalej będzie widoczna po odświeżeniu strony ( oczywiście nie mówię tutaj o ponownym uruchomieniu strony, bo wtedy znika, tylko o odświeżeniu ).

Jak będzie potrzeba to mogę wstawić kod, ale wystarczy mi tylko wyjaśnienie jakim sposobem mogę to naprawić. Z góry dziękuję!

1 odpowiedź

+1 głos
odpowiedź 4 czerwca 2018 przez Chess Szeryf (76,710 p.)
wybrane 4 czerwca 2018 przez nielotweb
 
Najlepsza

Robię system logowania w php'ie, i chcę wyświetlić wiadomość po złym wpisaniu danych, żeby się wyświetliła nad formularzem.

Niby zrobiłem to sesjami ale problem tkwi w tym że nie zawsze to działa dobrze ( nie kiedy się nie pojawia )

Napisz instrukcję warunkową taką, że gdy użytkownik nie próbował się logować do serwisu, to wtedy ten komunikat o logowaniu niech się nie pojawia.

drugi problem jest taki że po odświeżeniu strony chcę żeby ten błąd zniknął

Napisz zwykły enum (boolean), który po np. zinkrementowaniu nie pozwoli na wyświetlenie wiadomości.

komentarz 4 czerwca 2018 przez nielotweb Bywalec (2,240 p.)

Napisz instrukcję warunkową taką, że gdy użytkownik nie próbował się logować do serwisu, to wtedy ten komunikat o logowaniu niech się nie pojawia.

 Tą kwestię rozumiem, bo mogę sobie sprawdzić najprościej czy submit jest ustawiony.

Napisz zwykły enum (boolean), który po np. zinkrementowaniu nie pozwoli na wyświetlenie wiadomości.

Ale tej kwestii nie za bardzo rozumiem. To jest kod:

// LOGIN APP
if ( isset($_POST['login_submit']) )
{

    //form informations
    $email = $_POST['email_login'];
    $password = $_POST['password_login'];
    $loginErrors = [];

    //take user data
    $user = $builder->selectUserLogin($email);

    foreach ($user as $value)
    {
        if ( !empty($email) && !empty($password) )
        {
            if ($email == $value->email && $password == $value->password)
            {

                //variable
                $_SESSION['loginCorrect'] = true;

                //session with login variable
                $_SESSION['loginSession'] = $value->email;

                //forwarding to user/admin board
                $Request->sendToDelay('board');

                //remove errors
                unset($_SESSION['loginError']);

            }
            else
            {
                $_SESSION['loginError'] = '<h2>Wrong login data..</h2>';
            }
        }

    }

} else {

    unset($_SESSION['loginError']);

}

I w sumie znalazłem inny błąd. Ta wiadomość wyświetla się tylko wtedy gdy wpisze poprawny email a złe hasło, natomiast gdy jest inny email to błąd nie wyskakuje. Więc chyba zrobię od nowa to bo za dużo tych błędów jest..

komentarz 4 czerwca 2018 przez Chess Szeryf (76,710 p.)

Spróbuj tego:

<?php

session_start();
if(isset($_SESSION['logged'])) { 
	unset($_SESSION['logged']);
}

$_SESSION['email_login'] = $_POST['email_login'];
$_SESSION['password_login'] = $_POST['password_login'];
 
if(isset($_POST['login_submit'])) {
	
	if($_SESSION['email_login']=='qwerty1' && $_SESSION['password_login']=='qwerty2') {
		 
		$_SESSION['logged'] = 'You logged as '.$_SESSION['email_login'];
	} 
	
}
if(isset($_SESSION['logged'])) { 
	echo $_SESSION['logged'];
}

?>

.

komentarz 4 czerwca 2018 przez nielotweb Bywalec (2,240 p.)
Sorki że tak późno odpisuje. Więc troszkę nie rozumiem logiki tego , ale już sobie poradzę bo wiem o co chodzi, więc dzięki wielkie!

Podobne pytania

0 głosów
2 odpowiedzi 117 wizyt
pytanie zadane 25 marca 2016 w PHP przez niezalogowany
0 głosów
2 odpowiedzi 702 wizyt
pytanie zadane 25 listopada 2018 w PHP przez niezalogowany
+1 głos
1 odpowiedź 201 wizyt

92,568 zapytań

141,420 odpowiedzi

319,622 komentarzy

61,954 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!

...