Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Panel Admina dla 1 osoby
Forum PHP.pl > Forum > Przedszkole
Sign
Witam, co zrobic, aby dla 1 osoby ( admin glowny ) wyswietlal sie link
"Panel Admina" ?
KsaR
Sekunda w google. ("PHP rangi").

http://forum.php.pl/index.php?showtopic=22...t&p=1058538
bobek358
Czekaj, gdzies miałem szklana kulę - zaraz sprawdzę tongue.gif
A tak na poważnie, jakieś logowanie masz, albo inną autoryzację?
Sign
^ Tak mam panel logowania, rejestracji,
goartur
Logowanie(zrob tabele admin w db i sprawdzaj czy naprzyklad == 1, jesli tak to dodaj:):

  1. $_SESSION['admin'] = 1;
  2.  



Skrypt:

  1. if(isset($_SESSION['admin'])){
  2. echo 'tutaj akcje admina'
  3.  
  4. }
Sign
Nie rozumeim troszke, mam panel.php, a w nim tylko panel logowania, ale nie jest on podlaczony do rejestracji, jak to zrobic.
Sory zaglupie pytanie, ale jestem zielony
Sign
wiem już, że musze dodac nowe pole do tabeli users, ale nie wiem jak to zrobic . pomoze ktos?
KsaR
Cytat(Sign @ 14.08.2015, 19:01:49 ) *
wiem już, że musze dodac nowe pole do tabeli users, ale nie wiem jak to zrobic . pomoze ktos?

Ehh dobra dam gotowiec bo chyba ci tygodnie oszczędze... Z twoim nie do konca, czytaniem z uwagą.


Aby dodać do tabeli `users` pole ("kolumne") `staff` zrob np.
  1. ALTER TABLE `users` ADD `staff` tinyint UNSIGNED NOT NULL DEFAULT 0


Czyli domyślna ranga to 0 - użytkownik.

UPDATE-ami możesz zmieniać wartość aktualnego rekordu na inne, napewno znasz podstawy więc nie bede tlumaczyl.


---LOGOWANIE USERA---
Ok.
I gdy uzytkownik się zaloguje zapisujesz w sesji jego ID.

  1. $_SESSION['userId']=$row['userId']; # $row - zmienna z bazy, z np. ID...


---SPRAWDZENIE CZY JUŻ JEST ZALOGOWANY--
Potem sprawdzasz czy jest zalogowany

  1. if (isset($_SESSION['userId']))
  2. {
  3. # zalogowany
  4. }
  5. else
  6. {
  7. # nie zalogowany
  8. }



W "zalogowany"
Sekcja dla zalogowanych.

Tam tworzy kolejna zmienna,
Np. $user ktora bedzie zawierala pobrane z bazy dane odpowiedniego usera($_SESSION['userId']), np. Staff, nick czy co tam chcesz. - najlepiej żeby pobierało w tablicy.

Potem sprawdzasz:

  1. if ($user['staff']>0)
  2. {
  3. # czyli jesli ranga wieksza od 0(uzytkownika)
  4. }


Ten staff sam sobie ustal jak chcesz, mozesz np. Tak:

0 - uzytkownik,
1 - administrator,
2 - moderator.

Masz kompletnie na tacy, jeśli czegoś nie zrozumiałeś to masz BRAKI w podstawach i też je będziesz musiał powtórzyc.

Tyle.
Sign
Zrobilem wszystko tak jak napisales wyzej.

moj kod admin.php wyglada tak

  1. <?php
  2.  
  3.  
  4. if (isset($_SESSION['userId']))
  5. {
  6. echo 'segz'
  7. }
  8. else
  9. {
  10. echo 'lol'
  11. }
  12.  
  13.  
  14.  
  15. if ($user['user']>0)
  16. {
  17. echo 'tekst';
  18. }
  19.  
  20.  
  21.  
  22. ?>


i jezeli faktycznie wejde w admin.php to wyskakuje, ale cos takiego
"1) { echo 'e'; } ?>"

co zrobic, aby wyswiettlalo poprostu to co bylo w echo

KsaR
Cytat(Sign @ 14.08.2015, 19:36:26 ) *
Zrobilem wszystko tak jak napisales wyzej.

moj kod admin.php wyglada tak

  1. <?php
  2.  
  3.  
  4. if (isset($_SESSION['userId']))
  5. {
  6. echo 'segz'
  7. }
  8. else
  9. {
  10. echo 'lol'
  11. }
  12.  
  13.  
  14.  
  15. if ($user['user']>0)
  16. {
  17. echo 'tekst';
  18. }
  19.  
  20.  
  21.  
  22. ?>


i jezeli faktycznie wejde w admin.php to wyskakuje, ale cos takiego
"1) { echo 'e'; } ?>"

co zrobic, aby wyswiettlalo poprostu to co bylo w echo

Nie masz średnika za echo...
--
Ps. Zrobiłem jeszcze bardziej rozjaśniającą edycje co do zmiennej $user, w poprzednim poście.
Sign
A no, dodalem te sredniki, ale mam jeszcze jedno pytanie.
Jezeli mam np. konto login sign haslo sign to co zrobic, zeby to one bylo administratorem, a drugie pytanie to dlaczego wyswietla mi tutaj text dla wylogowanego, a nie zalogowanego :-)

Bardzo dziekuje ci, że mi pomagasz :-)
KsaR
Cytat(Sign @ 14.08.2015, 19:44:31 ) *
A no, dodalem te sredniki, ale mam jeszcze jedno pytanie.
Jezeli mam np. konto login sign haslo sign to co zrobic, zeby to one bylo administratorem, a drugie pytanie to dlaczego wyswietla mi tutaj text dla wylogowanego, a nie zalogowanego :-)

Bardzo dziekuje ci, że mi pomagasz :-)

Hmm

if (isset($_SESSION['userId']))

Sprawdzi czy istnieje sesja zalogowanego uzytkownika.
Update do bazy.. Pisalem juz tongue.gif.


  1. UPDATE `users` SET `staff`=1 WHERE `userId`=1

Zakladam ze `userId` 1 to twoje konto, tak czy inaczej to wzor, jak nadal masz do tego pytania to musisz zajrzec do google "mysql update przykłady", napewno coś znajdziesz po polsku.
Sign
Przy tym update, wywala blad
#1054 - Unknown column 'userId' in 'where clause'
KsaR
Cytat(Sign @ 14.08.2015, 19:55:45 ) *
Przy tym update, wywala blad
#1054 - Unknown column 'userId' in 'where clause'

Ehhhh...
Więcej w takim razie nie pomagam ponieważ:
Nie znasz podstaw MySQL.

userId to kolumna z id uzytkownika, nie wiem jak u ciebie sie nazywa więc myslalem ze sam zamienisz na swoje.
Przejdz jakis kurs inaczej będę musiał robić ja lub ktoś za ciebie krok po kroku (mimo że już 3 posty temu opisałem ci całość jak ma wyglądać).

Dodatkowe te braki średników, zakładam że może się nie wyspałeś.
Jeżeli to nie to, to musisz przejść także kurs PHP podstaw..

Tyle.
Prosze wroc dopiero gdy to przerobisz,
Gwarantuje że pewnie wrócisz tu po tym oświecony, a do tego jednego tematu już pewnie nie będziesz miał pytań przytaczając mój post, 3 posty temu..
Sign
Czytalem kurs php, ale wiele nie pamietam z tego, a na dodatek nic nie rozumiem :/

Moj kod wyglada tak

  1. <?php
  2. require_once 'user.class.php';
  3.  
  4.  
  5.  
  6. $_SESSION['id']=$row['id'];
  7.  
  8.  
  9.  
  10. if (isset($_SESSION['userId']))
  11. {
  12. echo 'zalogowany';
  13. }
  14. else
  15. {
  16. echo 'niezalogowany';
  17. }
  18.  
  19.  
  20. if ($user['user']<0)
  21. {
  22. echo 'Witaj w panelu!';
  23. }
  24.  
  25.  
  26.  
  27. ?>


a na dodatek wszystko zrobilem w phpmyadmin, a po zalogowaniu admina, albo normalnego konta wyskakuje i tak
"niezalogowany"

W czym blad jest ;/

halu ;c
bobek358
Wyświetla niezalogowany bo nie istnieje zmienna sesyjna: $_SESSION['userId']
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.