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

question-closed Ukryce g-recaptcha, nie wyświetlanie

VPS Starter Arubacloud
0 głosów
147 wizyt
pytanie zadane 22 maja 2020 w PHP przez spicedagger Użytkownik (530 p.)
zamknięte 23 maja 2020 przez spicedagger

Mam problem z ukryciem a raczej nie wyświetlanie. recaptchy dla zalogowanego użytkownika.

zrobiłem coś takiego i nie działa, nie wiem, jakieś inny pomysły

if(!isset($_SESSION['zalogowany']==true)) {
	   echo "<center><div 	 class='g-recaptcha' data-sitekey='TAk mam tu poprawy klucz'></div></center> <br>"; 
	   
	 }

 

komentarz zamknięcia: rozwiązany

1 odpowiedź

0 głosów
odpowiedź 22 maja 2020 przez Arkadiusz Waluk Ekspert (287,550 p.)
Trochę mało kodu i informacji, ale rozumiem, że nawet gdy jesteś wylogowany, to wyświetla się captcha? W momencie wylogowania co się dzieje z $_SESSION['zalogowany']? isset() sprawdza czy dana wartość istnieje. Może np. w momencie wylogowania ustawiasz to na false i tym samym nadal istnieje, tyle że ma wartość false a nie true?
komentarz 22 maja 2020 przez spicedagger Użytkownik (530 p.)
Troszkę tam zmieniłem na  if(!isset($_SESSION['zalogowany']==true), ale i tak nie działa:

chodzi mi oto żeby nie pokazywał captchy  w formularzu kontaktowym jak jesteś zalogowany bo to nie ma sensu. Sesja po wylogowaniu jest ustawiana na false i dodałem zniszczenie na wszelki wypadek ale nie działa,  mam  mam takiego ifa do imputa z e-mail i działa a ta captcha nie działa
komentarz 23 maja 2020 przez Arkadiusz Waluk Ekspert (287,550 p.)

Jeśli zmieniłeś dokładnie tak, to na pewno nie zadziała, bo jest błąd składniowy - brakuje jednego zamknięcia nawiasu. Poza tym nie to miałem na myśli - bez znaczenia jak to sprawdzisz, to isset() zwróci prawdę zarówno gdy wartość $_SESSION['zalogowany'] będzie true, jak i gdy false. To sprawdza czy dany element istnieje, a wtedy istnieje, tyle że ma false. Polecam zerknąć: https://www.php.net/manual/en/types.comparisons.php

Po dodaniu session_destroy() już powinno działać, bo wtedy cała sesja znika, ale o ile dobrze pamiętam to w ramach tego samego wykonania $_SESSION pozostanie widoczne. Czyli np. jeśli gdzieś na początku kodu zrobisz session_destroy() to do końca tego kodu jeszcze w $_SESSION prawdopodobnie będą przypisane wartości, a dalej (przy kolejnym wykonaniu tego samego pliku/przejściu do innego) już nie powinno ich być.

komentarz 23 maja 2020 przez spicedagger Użytkownik (530 p.)
Nie wiem co było grane, bo teraz działa to z samego początku,  dziwne straszne

Podobne pytania

0 głosów
2 odpowiedzi 347 wizyt
pytanie zadane 23 grudnia 2019 w PHP przez Karol97 Nowicjusz (120 p.)
0 głosów
2 odpowiedzi 440 wizyt
pytanie zadane 5 czerwca 2022 w PHP przez TlenekWodoru Użytkownik (520 p.)
0 głosów
1 odpowiedź 248 wizyt
pytanie zadane 3 marca 2019 w HTML i CSS przez trixter310 Obywatel (1,440 p.)

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 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

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 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!

...