![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 13.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Robie strone internetową gdzie mam panel logowania ktory wyciaga uzytkowników z bazy danych. Logowanie jest zapisywane na ciasteczkach a mimo to nie działa.
Oto plik z logowaniem
a to sprawdzanie czy cookie istnieje
I okazuje sie ze loguje dobrze ale ciastek nie trzyma. Czy ktos potrafi temu zaradzic? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 587 Pomógł: 131 Dołączył: 8.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Przeanalizuj pierwsze linijki ...
Ten post edytował rocktech.pl 22.06.2012, 07:48:39 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 13.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 587 Pomógł: 131 Dołączył: 8.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Tak.
Tu jest źle bo sprawdzasz czy istnieje zmienna $ciastko która linijkę wcześniej zainicjowałeś!
Jeżeli chcesz sprawdzić czy interpreter działa poprawnie (IMG:style_emoticons/default/smile.gif) to ten warunek ma sens w innym przypadku będzie zawsze spełniony. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 13.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
ale argument 'twojastrona' jest tworzony przy przycisnieciu logowanie, i potem w pliku sprawdzania jest przypisany co zmiennej, i potem sprawdzam. moze zle mysle, to prosze mnie nakierowac
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 121 Pomógł: 22 Dołączył: 22.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Ciasteczko może być tworzone przy kliknięciu, chodzi tu o cos innego.
isset sprawdza czy zmienna istnieje ( ciasteczko również jest zmienną ) i zwraca true/false. w tej wersji: tutaj zmienna $ciastko zostanie stworzona i przyjmie wartość true lub false
a tutaj zaraz sprawdzasz czy $ciastko istnieje, a skoro stworzyłeś je przed chwilą to ono zawsze będzie istniało. To juz ci wczesniej wytłumaczyli. Co do tego:
Sytuacja jest taka sama, $ciastko zostanie stworzone, więc isset też będzie zawsze dawał w tym przypadku true, nieważne że zmienna jest pusta. W tym wypadku opcje sa dwie tak jak ci pokazali:
lub jżeli sie uparłes by pierw deklarować $ciastko:
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 587 Pomógł: 131 Dołączył: 8.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
http://php.net/isset Cytat isset — Determine if a variable is set and is not NULL AND IS NOT NULL! Akurat w tej częsci kodu wszystko jest w porządku. Ten post edytował wNogachSpisz 22.06.2012, 10:14:53 |
|
|
![]()
Post
#9
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
@wNogachSpisz co ty za głupoty gadasz.... przeczytaj na spokojnie jeszcze raz posty wyjasniające i już się nie odzywaj bo leżysz na totalnych podstawach.
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
|
|
|
![]()
Post
#11
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Wiesz co.....
odpal sobie te dwa kody A potem idź się doucz dlaczego dwa razy na ekranie zobaczyłeś swój nick... |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 587 Pomógł: 131 Dołączył: 8.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Spokojnie (IMG:style_emoticons/default/smile.gif)
@wNogachSpisz http://bd.php.net/manual/pl/function.isset.php Cytat Returns TRUE if var exists and has value other than NULL, FALSE otherwise. isset zwróci zawsze true lub false! A więc:
Ten post edytował rocktech.pl 22.06.2012, 10:09:22 |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
Jeżeli chcesz sprawdzić czy interpreter działa poprawnie (IMG:style_emoticons/default/smile.gif) to ten warunek ma sens w innym przypadku będzie zawsze spełniony. Bzdura. Ten warunek NIE BĘDZIE zawsze spełniony. I kto leży w podstawach? @nospor Dobrze ci radze, skasuj profil i przestań się dalej kompromitować. Ten post edytował wNogachSpisz 22.06.2012, 10:10:34 |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 587 Pomógł: 131 Dołączył: 8.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#15
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Bzdura. Ten warunek NIE BĘDZIE zawsze spełniony. LOL, przecież ty tym razem pokazałeś zupełnie inny kod, w którym oczywiscie nie zawsze będzie spełniony.... Ty nawet nie wiesz o jakim kodzie mowisz LOL
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
No tak tu się zgodzę , ze się zagalopowałem. Nareszcie :-] Może przejdźmy dalej z analizą kodu z pierwszego posta.
User zostanie zalogowany o ile jego hasło to "1". Ten post edytował wNogachSpisz 22.06.2012, 10:19:56 |
|
|
![]()
Post
#17
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat No tak tu się zgodzę , ze się zagalopowałem. No, skoro rocktech się przyznał do błędu a ty sie z tego tak cieszysz, to jeszcze ty się przyznaj. Bo póki co zrobiłeś to po cichu, edytując pierwszego posta (IMG:style_emoticons/default/smile.gif) Nareszcie :-] Cytat oże przejdźmy dalej z analizą kodu z pierwszego posta. Wcale nie. Przyjąłes, że kod wygląda teraz tak:pobierz, plaintext $query = "SELECT * FROM users WHERE haslo='$ciastko'"; echo $query; // SELECT * FROM users WHERE haslo='1' pobierz, plaintext User zostanie zalogowany o ile jego hasło to "1".
A skoro kod wygląda tak, to $ciastko nie zawiera 1 a zawiera hasło pobrane wcześniej z bazy (a przynajmniej powinno zawierać). Więc błąd jest w innym miejscu (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
A skoro kod wygląda tak, to $ciastko nie zawiera 1 a zawiera hasło pobrane wcześniej z bazy (a przynajmniej powinno zawierać). Więc błąd jest w innym miejscu (IMG:style_emoticons/default/smile.gif) No ok, czyli musimy w 13 linii dopisać: Ten post edytował nospor 22.06.2012, 10:37:31 |
|
|
![]()
Post
#19
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat No ok, czyli musimy w 13 linii dopisać: Nie koniecznie. Może się okazać że ciastko w ogóle nie jest tworzone (bo coś tam) i w ogóle w linie 13 kod nie wejdzie. Trzeba przeprowadzić normalną analizę, począwszy od włączenia wyświetlania wszystkich błędów, po kolejnym wyświetlaniu zmiennych.Temat: Jak poprawnie zada pytanie |
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 121 Pomógł: 22 Dołączył: 22.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Ogólnie logowanie tyko po haśle jest bee ( bo co gdy np. kilku userów ma to samo haslo? ).
Co do nietrzymania ciasteczek, może je wcale nie tworzy? Wielokrotnie miałem z tym problemy, zawsze pomagało na początku całego kodu dać a na końcu: Z tego co pamiętam to sa jakis uchwyty, nigdy nie zagłębiałem się co to tak do końca jest, ale pomaga przy ciasteczkach (IMG:style_emoticons/default/smile.gif) Z drugiej strony pomaga to jak sie pojawiają Warningi, a tu nic o nich pisane nie było, ale spróbowac warto. @down Nie widziałem, zacząłem pisać zanim napisałeś posta, w miedzyczasie szukałem tych uchwytów to mi zeszlo trochę. Ten post edytował Shido 22.06.2012, 10:50:59 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 02:16 |