![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 11.05.2013 Ostrzeżenie: (0%) ![]() ![]() |
Siema
Robię sobie system kont i mam pewien problem. Mianowicie mam plik który jest include'owany. Całość wczytywana jest na takim linku: http://localhost/?p=2 (p=2 oznacza że jest załadowana jakaś tam nieistotna strona 2) login_form.php
zmienna r=function powoduje załadowanie login_function.php Gdy ktoś wpisze dobre dane, to login_function.php zrobi coś takiego:
Jednak gdy coś się nie zgadza, to robi coś takiego (przykład, ale reszta działa analogicznie):
No i teraz jak to zrobić żeby przy podaniu złego loginu i hasła zaczął czytać login_form od części "b"? Druga kwestia jest taka, że nawet gdy za pierwszym razem użytkownik poda dobre dane, to odwiedzana strona się odświerza i pokazuje ukrytą treść (widoczną tylko po zalogowaniu - czyli loguje normalnie), jednak w miejscu gdzie znajduje się formularz logowania powinien się pojawić panel użytkownika. Zamiast tego dalej widzę tam formularz, a dodatkowo błędy że nie zdefiniowano nickname i password oraz wyświetla mi komunikat niespełnionego pierwszego warunku logowania (w podanym przezemnie przykładzie to byłoby "konto nieaktywowane". Jest to normalny efekt w przypadku zwykłego załadowania http://localhost/?p=2&r=function Tylko czemu po poprawnym logowaniu ładuje mi ten link? Powinien załadować stronę bez zmiennej "r".. Próbowałem też tak pobierać potrzebny link, ale nie pomogło: Jakby się przydało, to załączam jeszcze ten pliczek: panel.php
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
Zacznijmy od tego że w znaczniku a nie operujesz na name tylko id (IMG:style_emoticons/default/smile.gif) name zostało wycofane wraz z html5, ale to poza tematem, a co do problemu to wprawdzie wrzuciłeś dużo kodu, ale jak na niego patrze to nasówa sie tylko jedno pytanie co autor miał na myśli... html w żaden sposób nie jest dla niego ograniczeniem i wykonujesz zawsze wszystko, poprostu brakuje Ci warunku który sprawda czy wysłany został formularz lub nie (IMG:style_emoticons/default/wink.gif)
Ten post edytował com 20.05.2013, 20:39:48 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 11.05.2013 Ostrzeżenie: (0%) ![]() ![]() |
A możesz zapodać prostym przykładem jak to zrobić w jednym pliku? Bo już jakiś czas temu szukałem samemu (bo uznałem że tak będzie prościej), ale nie znalazłem nic dobrego. Jak zapytałem na forum to dowiedziałem się że muszę to zrobić ajaxem - ja tego nie ogarniam, a najsampierw to bym się nauczył chociaż podstaw php. Z tego co wiem to jest jakieś "rozszerzenie" php
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
Ale co chcesz zrobić w jednym pliku? cały skrypt logowania? przykładów na necie jest na pęczki... nawet na tym forum pewnie coś znajdziesz... Ajax to jest js (IMG:style_emoticons/default/wink.gif) chociaż nie bardzo widze poco niby on tu, ale może gdzieś by sie znalazło słuszne wytłumaczenie jego użycia (IMG:style_emoticons/default/wink.gif)
Ten post edytował com 20.05.2013, 21:00:41 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 11.05.2013 Ostrzeżenie: (0%) ![]() ![]() |
Cytat poprostu brakuje Ci warunku który sprawda czy wysłany został formularz lub nie No więc mogę zrobić kod który ma formularz, a jeżeli zostanie kliknięte "loguj" to wykona mi cały kod php związany se sprawdzaniem danych itp. Tym sposobem można (i nawet byłoby lepiej) zrobić to w jednym pliku |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
to wrzuć jescze kod gdzie wgl Cie loguje bo z tego co widzę tu go nie ma...
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 11.05.2013 Ostrzeżenie: (0%) ![]() ![]() |
To cały plik login_function.php
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
No teraz to nabiera sensu... a wiec tak w pliku login_form.php :
jest deklaracja adresu url który ma postać $_SESSION['url']=$_SERVER['REQUEST_URI']; czyli adres.pl/login_form.php a tam wykonuje się jeden z tych twoich warunków więc dlatego jest on dopisywany, dlatego nasówa sie pytanie, czemu to ma służyć?:
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 11.05.2013 Ostrzeżenie: (0%) ![]() ![]() |
Cóż.. całość jest na tyle skąplikowana że chyba musiałbym wysłać wszystko aby dało się coś z tego zrozumieć. Tak czy inaczej jakbyś podał mi wzór pod coś takiego to byłbym mega wdzięczny ;]
Wiem że to nie będzie działać, ale opisany efekt bym chciał osiągnąć. Nie musiałbym się wtedy bawić aż tyle z głupim formularzem.
Dać kod do całości? Wątpię żeby chciało Ci się przeglądać cały.. Myślę że jak pomożesz mi z tym, to sobie poradzę Ten post edytował StadiPL 20.05.2013, 21:43:21 |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli dobrze zrozumiałem to myśle że najprosciej zrobić to tak:
Plik login.php W tym momencie faktycznie prosiło by sie o ajax dla tego komunikatu, zamiast przeładowania strony ale nie chce Ci za bardzo namieszac (IMG:style_emoticons/default/wink.gif) Ten post edytował com 20.05.2013, 22:30:49 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 11.05.2013 Ostrzeżenie: (0%) ![]() ![]() |
Myślę że nie namieszałbyś, a wręcz przeciwnie - zajebiście opisałeś powyższy przykład ;] Może to głupie, ale wolę zawsze praktykę od teorii, więc php uczę się po prostu wykonując jakieś kody (IMG:style_emoticons/default/wink.gif) Mam z czymś problem to szukam, próbuję, jak nie daje rady, to w końcu kogoś pytam. Potem analizuję sobie kod wiele razy, stosuję w różnych wariantach i w ten oto sposób się uczę. Skoro ten cały ajax jest takim stanadrowym rozwiązaniem (w dodatku dającym lepsze efekty), to chyba i tak będę musiał tego też zacząć coś tam się uczyć. Od czegoś zacząć trzeba, więc czemu by nie od tego ;p
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
No tak nie można osiadać na laurach, a nie na samym php, programowanie internetu sie kończy... tak więc życzę Ci owocnej nauki i mam nadzieję ze moje wskazówki okazały sie pomocne (IMG:style_emoticons/default/smile.gif)
co do Ajaxa to chyba najlepszy bedzie manual http://api.jquery.com/jQuery.ajax/ i http://api.jquery.com/jQuery.post/ (IMG:style_emoticons/default/wink.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 10:04 |