Wpis z mikrobloga

Miraski jak to ugryźć, wiem ze banał ale nie mogę znaleźć dobrego wpisu na stackoverflow XD

Mam se login i już super, js mnie to zbiera z formy, php mi się loguje sprawdza i niby zaczyna „sesje” jeśli hasło i user się zgadza. No a w sesji podaje tez zmienna ze $username to username wpisane w formie i w ogóle takie śmieszne rzeczy. Ale jak dałam header(); żeby przełączył na następne stronę jeśli logowanie zakończone sukcesem i nie przełącza... ale jak dam echo LUBIĘ PLACKI to pokaże XD

Mało tego, jak to kuzwa przenieść z powrotem na front end? W sensie, chciałabym żeby na sukcesie przełączyło mnie na stronę „użytkownika” i tak by było „Cześć Username”

No ja nie wiem jak to zrobić z której strony się za to zabrać. Przekopałam różne wpisy i poradniki „php ajax login successful show username” i nie mogę nic znaleźć żeby było jedno po drugim jak krowie na miedzy (,)

#php #it #frontend #backend ##!$%@?
  • 43
@PaulStanley:

No to Cię pytam, jak masz zbudowane zapytanie do ajaxa.
W jaki sposób otrzymujesz dane od pliku do którego wysyłałaś zapytanie?
Wklejże kod tego zapytania do ajaxa, bo nie idzie się połapać jak obsługujesz odpowiedź.

Generalnie, jeśli plik odpowiadający za logowanie zwróci Ci prawidłową wartość to robisz

location.href="[http://domena.pl/costam_po_zalogowaniu";](http://domena.pl/costam_po_zalogowaniu";)
i śmiga.
@paramyksowiroza: dobra czyli co #!$%@?ć ostatniego ifa?

No i ogólnie też przy okazji na tej pustej linijce na sukcesie tam było:
$_SESSION['username'] = $username; i kod z header(); (no teraz to nie trzeba tego headera jak JS ma to zrobić)
też mogę to wcisnąć gdzieś?
@PaulStanley: No przede wszystkim, to powinnaś mieć
session_start(); tuż po obstart();

Po drugie, powinnaś usunąć wszystkie linie z instrukcją echo.

Po trzecie, tam gdzie masz
"if($row[0] > 0){"
powinnaś wstawić to co Ci napisałem.

Po czwarte, tak, powinnaś mieć tam $_SESSION['username'] = $username;
bo po co Ci logowanie, skoro nie masz sesji?
@paramyksowiroza: no i zajebiście i to jest jasne a nie jakieś #!$%@? na uczelni o dupie maryni, zabieram się za to i działam

a tak z ciekawości to dlaczego echo złe, bo ja lubię po prostu czasem tego użyć jako sprawdzenie czy coś "przeszło"
@PaulStanley: najlepiej by to było zrobić po prostu na statusach, żaden content w odpowiedzi tutaj nie jest potrzebny. 200 jeżeli logowanie się udało, 401 jeżeli złe dane. Response 200 unauthorized jest co najmniej dziwny. ( ͡° ͜ʖ ͡°)
@PaulStanley: Koleżanko, bo tak naprawdę nie rozumiesz tego ajaxa. Po zapytaniu do ajaxa, otrzymujesz wiadomość zwrotną przez JSON. I to nie jest tak, że możesz sobie "echować" w tym pliku PHP, bo nic Ci to nie da.
Możesz podejrzeć co się "#!$%@?" przez konsolę w przeglądarce, ale tylko tyle. Nic się od tego "echowania" nie wydarzy.

W linii w js

success: function(response){
javascript otrzymuje tego JSON-a jako odpowiedź zwrotną - tablicę
@paramyksowiroza: nie no chodziło mi właśnie że sobie w przeglądarce w zakładce network podglądam czy przeszło czy nie, tylko się pytam czy to echo przeszkadza w czymś innym

no niestworzone rzeczy, nie będę się oszukiwać, no ale człowiek całe zycie się uczy - dziękuję serdecznie i @croppz: też. wykop mnie nigdy nie zawodzi jeśli chodzi o takie zagwozdki ( ͡° ͜ʖ ͡°)