![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 510 Pomógł: 1 Dołączył: 27.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
chcialbym sie dowiedziec po co dokladnie robic jakies dodatkowe konta w mysql z roznymi dostepami jesli tylko jedna osoba jest adminem i prowadzi strone ? jaki jest cel w tych dodatkowych kontach ?
dzieki za info ![]() pozdro ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
Skoro zawsze tylko jedna osoba sie zajmuje serwisem, to oczywiscie nie ma to sensu.
Ma to sens w wypadku, gdy nie wiesz, czy w przyszłości nie będzie potrzebne rozdzielenie niektórych funkcji - wtedy warto przygotować infrastrukturę tak, żeby łatwo można dodac nowych użytkowników. Pozdrawiam. -------------------- To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness; chaotic, confused, vulnerability, to inform yourself. Think for yourself. Question authority. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 510 Pomógł: 1 Dołączył: 27.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
rozumie, ze chodzi tutaj o takich ludzi jak moderatorzy czy jakis pomocny administratorr ? a skad wtedy mam wiedziec ktore rzeczy mam im udostepnic ? jak to zrobic w mysql ? gdzie to jest ? do czego powinni miec dostep ?
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 492 Pomógł: 33 Dołączył: 16.08.2007 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Możesz stworzyć w tabeli użytkowników dodatkowe pole typu ENUM i tam będzie napisane, kto jest kim...
Każdemu użytkownikowi można przypisać jakąs wartość - przykładowo 0 oznacza zwykłego użytkownika, 1 moderatora, a 2 administratora - i w zależności od tego pola wyświetlasz różną zawartość ![]() Cytat gdzie to jest? Tego "nie ma" w MySQL, są jedynie narzędzia do tego ![]() Ten post edytował Hazel 1.09.2007, 15:37:52 -------------------- ![]() |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 36 Pomógł: 0 Dołączył: 1.05.2007 Skąd: Gryfino Ostrzeżenie: (0%) ![]() ![]() |
W celach zarobkowych naprzykład.
Możesz też rozdzielić urzytkowników i np. jesli mają opłacony abonament mogą korzystać z jakiś dodatkowych funkcji. Np. : Mieć swoją książkę telefoniczną na Twojej stronie ;] |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 510 Pomógł: 1 Dołączył: 27.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
a jak mniej wiecej to sie robi ? rozdziela informacje ? nadaje jakies atrybuty uzytkownikowi ?
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 492 Pomógł: 33 Dołączył: 16.08.2007 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Domyślnie możesz nadawać do tego pola wartość 0 (zwykły użytkownik), a 1 lub 2 zmienisz w bazie ręcznie dla adminów lub modów, bo przecież nie będzie ich bardzo dużo...
-------------------- ![]() |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 510 Pomógł: 1 Dołączył: 27.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
zalozmy, ze tak zrobie i admin ma 2 mod ma 1 a user ma 0
![]() ![]() |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 492 Pomógł: 33 Dołączył: 16.08.2007 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Generalnie wszystko za pomocą warunków i sesji, jak to napisałeś.
A jak to sobie zaimplementujesz - czy będziesz miał plik OgromnySkrypt.php, w nim 14324123590 linii kodu i sprawdzenia za każdym razem, czy to admin, czy mod, czy user, czy loser, czy też może będziesz stosował jakże przydatne ponowne stosowanie kodu, OO, dziedziczenie i rozszerzanie właściwości klas, to już Twoja sprawa... Kręgosłupem może być na przykład:
I to może być jedyna zawartość w pliku index.php, jeśli dobrze wszystko rozplanujesz i zastosujesz dziedziczenie klas. Ten post edytował Hazel 1.09.2007, 22:04:38 -------------------- ![]() |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 510 Pomógł: 1 Dołączył: 27.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
czyli co proponujesz ? zrobienie mega wielkiego kodu php ktory za kazdym razem bedzie sprawdzal kto to i wyswietlal odpowiednie elementy, czy 3 rozne strony z odpowiednia trescia ? w zaleznosci wlasnie od zalogowania na te stronie zostanie ktos przeniesiony ? czy tez w tych klasach... ale to juz musze sie douczyc na ich temat
![]() |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 492 Pomógł: 33 Dołączył: 16.08.2007 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Jasne, że trzy różne strony z odpowiednią treścią...
Proponuję napisać klasę Strona_uzyt, która będzie wyświetlała stronę użytkownika, następnie klasę Strona_mod, która będzie dziedziczyć od klasy Strona_uzyt i rozszerzać ją o niektóre operacje dostępne tylko dla moderatorów, no i klasę Strona_admin, dziedziczącą od Strona_mod i rozszerzającą ją o funkcje administratorów. No i te klasy zawrzeć w odrębnym pliku, a tworzyć ich egzemplarze i wywoływac ich operacje w plikach user.php, mod.php i admin.php. Tak ja bym to zrobił. -------------------- ![]() |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 510 Pomógł: 1 Dołączył: 27.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
masz racje
![]() ![]() ![]() |
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 492 Pomógł: 33 Dołączył: 16.08.2007 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
To już zależy od tego, co przewidujesz - jakie zapytania ma wykonywać użytkownik. Jak przypuszczam, będą to: SELECT, INSERT, UPDATE I DELETE. Ale ja w swoich aplikacjach czasem zmuszony jestem nadać użytkownikom przywilej ALTER, choćby do automatycznego zmieniania autoinkrementacji tabeli po usunięciu rekordu (choć ALTER teoretycznie jest przywilejem typowo administracyjnym). Jednak myślę, że 4 w/w przywileje powinny wystarczyć w większości przypadków. Pamiętaj też o zasadzie najmniejszego przywileju - jeśli w aplikacji użytkownik nigdy nie wykonuje na przykład zapytań UPDATE (co zdarza się dość często, szczególnie w małych aplikacjach), to nie należy nadawać mu przywileju UPDATE. Dość oczywiste, jak się pomyśli, ale wielu programistów "z zasady" nadaje 4 w/w przywileje użytkownikom, co jest błędem.
A co do tego, co napisałeś - księga gości i sondy - na pewno SELECT i INSERT, a jeśli przewidujesz również możliwość kasowania i modyfikacji swoich postów/głosów w sondzie, to także odpowiednio DELETE i UPDATE. Pozdrawiam. Ten post edytował Hazel 2.09.2007, 14:54:51 -------------------- ![]() |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 510 Pomógł: 1 Dołączył: 27.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Dzieki
![]() ![]() ![]() ![]() ![]() ![]() ALTER CREATE TEMPORARY TABLES CREATE VIEW DELETE DROP FILE INDEX INSERT LOCK TABLES PROCESS RELOAD SELECT SHOW DATABASES SHOW VIEW SHUTDOWN SUPER UPDATE znasz moze jakas strone gdzie to jest opisane co za co jest odpowiedzialne ? albo jesli moglbys mi to tak troche przetlumaczyc/wytlumaczyc bylbym wdzieczny ![]() pozdrawiam ![]() |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 492 Pomógł: 33 Dołączył: 16.08.2007 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Chciałem Ci napisać, że 5 minut googlowania, ale... nie znalazłem takiej strony, ku mojemu zdziwieniu
![]() ![]() To, co wrzuciłeś, nie jest pełną listą przywilejów, ale to co ja Ci daję, też nią nie jest (zależy jeszcze, co traktować jako przywilej). ALL - nie wiadomo, czy to przywilej, czy nie, zależy jak patrzeć ![]() ![]() Jego przeciwieństwem jest "przywilej" (?) USAGE, który oznacza nienadanie użytkownikowi żadnego przywileju (użytkownik z przywilejem USAGE może sie tylko zalogować i wylogować, a przywileje zazwyczaj nadaje mu się w tym czasie, ale to inna bajka - może przecież być potrzebny komuś użytkownik bez przywilejów, chociaż nie wiem do czego ![]() ALL PRIVILEGES - patrz wyżej ![]() ALTER - przywilej administracyjno-userski, pozwala na zmianę struktury istniejących już tabel, czyli dodawanie i usuwanie kolumn z tabel, zmianę nazw kolumn/tabel, zmianę typów danych w kolumnach, zezwala na używanie polecenia ALTER. CREATE - przywilej administraycjno-userski, pozwala na tworzenie nowych baz i tabel, zezwala na używanie odpowiednio poleceń CREATE TABLE i CREATE DATABASE. CREATE TEMPORARY TABLES - przywilej administracyjno-userski, pozwala na tworzenie tabel tymczasowych, zezwala na używanie polecenia CREATE TEMPORARY TABLE. CREATE USER - przywilej administracyjno-userski, pozwala na tworzenie nowych użytkowników, usuwanie ich, zmianę ich nazwy oraz odbieranie przywilejów, zezwala na używanie odpowiednio poleceń: CREATE USER, DROP USER, RENAME USER I REVOKE. CREATE VIEW - przywilej administracyjno-userski, pozwala na używanie polecenia CREATE VIEW, które służy do tworzenia nowego widoku. DELETE - przywilej typowo userski, pozwala na usuwanie z tabeli istniejących wierszy, zezwala na używanie polecenia DELETE. DROP - przywilej administracyjno-userski, pozwala na usuwanie baz i tabel, zezwala na używanie polecenia DROP. FILE - przywilej typowo administracyjny, pozwala na wczytywanie danych z plików do tabel i z tabel do plików, zezwala na używanie poleceń LOAD INTO OUTFILE oraz LOAD DATA INFILE. GRANT - tutaj też trudno to w sumie nazwać przywilejem, a jeśli juz to rekurencyjnie, bo... GRANT powala na nadawanie przywilejów, czyli używanie polecenia GRANT. INDEX - przywilej administracyjno-userski, pozwala na tworzenie i usuwanie indeksów w tabelach, zezwala na używanie poleceń CREATE INDEX i DROP INDEX. INSERT - przywilej typowo userski, pozwala na wstawianie nowych wierszy do tabel, zezwala na używanie polecenia INSERT. LOCK TABLES - przywilej administracyjny, zezwala na używanie polecenia LOCK TABLES, służącego do zablokowaniu jakiejś tabeli podczas tworzenia kopii zapasowej. PROCESS - przywilej typowo administracyjny, pozwala na śledzenie procesów serwera i przerywanie ich. RELOAD - przywilej typowo administracyjny, pozwala na odświeżenie przywilejów, tabel, dziennika zdarzeń, listy nazw komputerów i takie tam, przydaje się do przeładowania tabel, które zawierają informacje na temat praw dostępu, aby nie trzeba było kończyć pracy serwera i wznawiać jej ponownie po zmianie uprawnień, zezwala na używanie polecenia FLUSH. SELECT - przywilej typowo userski, pozwala na wyszukiwanie wierszy z tabel, zezwala na używanie polecenia SELECT. SHOW DATABASES - przywilej administracyjno-userski, pozwala na używanie polecenia SHOW DATABASES, służącego do wyświetlania nazw wszystkich baz znajdujących się na serwerze. SHOW VIEW - przywilej administracyjno-userski, pozwala na używanie polecenia SHOW VIEW, służącego do pokazywania wszytskich widoków. SHUTDOWN - przywilej typowo administracyjny, pozwala na zakończenie pracy serwera MySQL. SUPER - przywilej typowo administracyjny, pozwala na definiowanie triggerów. UPDATE - przywilej typowo userski, pozwala na zmianę wartości kolumn w wierszach tabel, zezwala na używanie polecenia UPDATE. USAGE - patrz ALL. WITH GRANT OPTION - też nie wiadomo, czy to przywilej, czy nie, ważne, że chodzi o to, że użytkownik z przywilejem takim może nadawać innym użytkownikom takie przywileje, jakie sam ma. Raczej nie polecam dla mało skomplikowanych systemów, szczerze to nigdy nie stosowałem - może mój błąd. To chyba tyle, mało o tym w necie jest, może komuś się przyda... Podział na przywileje administracyjne i userskie (a tym bardziej administracyjno-userskie, które są moim własnym tworem), jest bardzo umowny - nikt nie mówi, że użytkownik nie może mieć nadanego przywileju SHUTDOWN, a czy jest to niebezpieczne, musi zdecydować sam administrator... jak chce nadać - niech se nadaje ![]() Obowiązuje oczywiście zasada najmniejszego przywileju, która mówi, że użytkownik powinien mieć TYLKO takie przywileje, które są mu w danej chwili potrzebne - pisałem o tym niżej. Pzdr. -------------------- ![]() |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 510 Pomógł: 1 Dołączył: 27.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
dobrze
![]() ![]() ![]() ![]() |
|
|
![]()
Post
#17
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 590 Pomógł: 40 Dołączył: 11.01.2007 Skąd: Centrum Ostrzeżenie: (0%) ![]() ![]() |
dobrze ![]() ![]() ![]() ![]() @kkuubbaa88 może teraz wyjadę jak Filip z konopi ale pozwól, że zapytam Ciebie w jakim celu tworzysz użytkowników w mysqlu ![]() Jeżeli chodzi Ci o użytkowników jakiejś strony/ portalu / systemu internetowego, którzy mają się tam logować i mają mieć tam odpowiednie uprawnienia do różnych modułów to tworzenie użytkownika do każdej osoby rejestrującej się jest pomyłką. W takich sytuacjach jest jeden użytkownik w bazie danych ( dane tego użytkownika podajesz do funkcji PHPowych łączących się z bazą danych ) a osoby rejestrujące się to nowe rekordy w bazie danych. Tak możesz zrobić o wiele dokładniejsze zarządzanie uprawnieniami do poszczególnych modułów strony ( systemu/ portalu itp ) jak i jakie czynności mogą wykonywać w danych modułach ( SELECT INSERT UPDATE DELETE ) Jeżeli jednak pytasz o tworzenie użytkowników w MySQLu nie z zamiarem wykorzystania tychże użytkowników na stronie / portalu / systemie to wtedy nie zawracaj sobie głowy moją wypowiedzią ![]() -------------------- 404
|
|
|
![]()
Post
#18
|
|
![]() Grupa: Zarejestrowani Postów: 492 Pomógł: 33 Dołączył: 16.08.2007 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
@Cienki1980
Ej no, bez przesady, wyjechałeś jakbyś na Marsie mieszkał, myślałem, że to oczywiste jest ![]() A może jednak nie... Więc powtórzę po Tobie, że: @kkuubbaa88 użytkownik MySQLa nie ma nic wspólnego z rejestracją użytkowników na stronie/grze/portalu... A pole typu ENUM po prostu dodajesz do tabeli użytkowników... Ten post edytował Hazel 3.09.2007, 09:56:39 -------------------- ![]() |
|
|
![]()
Post
#19
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 590 Pomógł: 40 Dołączył: 11.01.2007 Skąd: Centrum Ostrzeżenie: (0%) ![]() ![]() |
@Cienki1980 Ej no, bez przesady, wyjechałeś jakbyś na Marsie mieszkał, myślałem, że to oczywiste jest ![]() A może jednak nie... Ja przeczytałem dokładnie to co pisze kkuubbaa88 a w szczególności ten post: Cytat masz racje smile.gif to bedzie najlepsze wyjscie smile.gif a mam jeszcze pytanie smile.gif jakie przywileje powinno miec konto w mysql, ktore bedzie na zalogowanych uzytkownikow ? aby mogli oblugiwac np ksiege gosci, sondy, i cos dodac od siebie ? konto dla niezalogowanych wiem, ze nie bedzia mialo zadnych mozliwosci... nic dodawac nic pisac i w ogole... ale user ? Dlatego wolałem od razu napisać niż pchać w złą stronę -------------------- 404
|
|
|
![]()
Post
#20
|
|
![]() Grupa: Zarejestrowani Postów: 492 Pomógł: 33 Dołączył: 16.08.2007 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
No słusznie, ja też to tak odebrałem
![]() ![]() -------------------- ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 17:09 |