[PHP]Pytanie o funkcję |
[PHP]Pytanie o funkcję |
14.05.2019, 14:37:48
Post
#1
|
|
Grupa: Zarejestrowani Postów: 256 Pomógł: 16 Dołączył: 21.12.2014 Ostrzeżenie: (0%) |
Witam, może dość głupie pytanie ale "KTO PYTA NIE BŁĄDZI" a więc do rzeczy:
Pomyślałem czy można zrobić funkcję w PHP która by odpowiadała za sprawdzanie czy użytkownik jest zalogowany i ma dostęp do danej treści na stronie. Jeżeli tak, czy dałoby się to zrobić w funkcji. Gdzie zamiast pisania na każdej stronie, podstronie dość długiego kodu, wystarczyłoby wywołać funkcję. Przykład: Na każdej stronie , podstronie ma zapisany taki kod
gdzie zamiast takiego wyżej kodu można by było zapisać w ten sposób
|
|
|
14.05.2019, 15:52:38
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 834 Pomógł: 225 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) |
Na każdej stronie powinnien być kod
a funkcja name() powinna się nazywać inaczej: isLogged() i zwracać wartość true:false getName() -> dopiero powinna zwracać nazwę użytkownika wtedy if(isLogged()) { content } |
|
|
14.05.2019, 17:35:16
Post
#3
|
|
Grupa: Zarejestrowani Postów: 256 Pomógł: 16 Dołączył: 21.12.2014 Ostrzeżenie: (0%) |
Chciałem to zrobić w ten sposób ale nie mogę tego ugryźć.
Kod <?php require('../true.php'); ?> <!Doctype> <HTML lang="pl"> <head> <meta charset="UTF-8"> <link rel="stylesheet" type="text/css" href="../app-css/main.css"> </head> <body> <hrader> <nav> <ul> <li><a href="#">Profil <?php if(isLogin()) { echo $_SESSION['user']; } else { echo "Gość"; } ?></a></li> <li><a href="#">Ogłoszenia</a></li> <li><a href="#">Szukaj</a></li> <li><a href="http://localhost/nowywyglad/news/app-request/logout.php">Wyloguj się</a></li> </ul> </nav> </hrader> oraz osobny plik true.php
Błędów nie ma żadnych wartość po zalogowaniu zwraca Zalogowany Gość po wylogowaniu zwraca samo Gość |
|
|
14.05.2019, 17:43:01
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 834 Pomógł: 225 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) |
tak jak napisałem funckja isLogin() powinna zwracać albo true albo false, a nie `echo`
Tzn. echo też może jak potrzebujesz prześledzić działanie funkcji. W ogóle w takich miejscach krócej jest użyć coś takiego, bez żadnych ifów, klamerek |
|
|
14.05.2019, 17:47:03
Post
#5
|
|
Grupa: Zarejestrowani Postów: 256 Pomógł: 16 Dołączył: 21.12.2014 Ostrzeżenie: (0%) |
W tym zapytaniu mają być dwa pytajniki bo krzyczy mi błędem
Cytat Parse error: syntax error, unexpected 'unset' (T_UNSET) in C:\xampp\htdocs\nowywyglad\news\true.php on line 5 Naprawiłem ten błąd dodając Kod session_unset ale gdy zaloguje się to pojawia się kolejny błąd. Cytat Profil Warning : session_unset() expects exactly 0 parameters, 1 given in C:\xampp\htdocs\nowywyglad\news\true.php on line 5 aza121212
Ten post edytował jaca121212 14.05.2019, 17:54:30 |
|
|
14.05.2019, 17:57:27
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 834 Pomógł: 225 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) |
Gdzie ja użyłem dwa pytajniki?
Jest tylko jeden znak zapytania. widzisz session_unset() to też rozwiązanie - manuela zawsze pomoże. Jak masz wersję PHP7 to możesz użyć podwójny znak zapytania:
W powyższym przykładzie wynikiem będzie oczywiście 10. Mimo zę nie ma zadeklarowanej zmiennej $abc, a jakby nie było $var to wynik byłby 20. |
|
|
14.05.2019, 18:06:17
Post
#7
|
|
Grupa: Zarejestrowani Postów: 256 Pomógł: 16 Dołączył: 21.12.2014 Ostrzeżenie: (0%) |
A ten błąd co oznacza ?
Cytat Profil Warning : session_unset() expects exactly 0 parameters, 1 given in C:\xampp\htdocs\nowywyglad\news\true.php on line 5 aza121212 I jak go naprawić ? |
|
|
14.05.2019, 18:11:30
Post
#8
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
Przecież masz dokładnie napisane. Funkcja spodziewa się 0 parametrów a podajesz jej 1.
-------------------- |
|
|
Wersja Lo-Fi | Aktualny czas: 20.04.2024 - 05:11 |