![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 16.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam serdecznie.
Przegladalem caly dzial dotyczacy Postgresa. Otoz borykam sie z tym od kilku dni i jestem w kropce. Przejalem obsluge psql po adminie, ktory korzystal z cgi i c++ do obslugi bazy. Ja natomiast chcialbym troche to zrobic po swojemu no i jest problem. W c++ by polaczyc sie z okreslona baza wykorzystuje sie polecenie mag.connect, po tym okresla sie zmienna user i haslo. Po wpisaniu okreslonego user'a jak i hasla w formularzu logowania nastepuje polaczenie z okreslona baza. (Baza psql posiada zapisanych w "pg_user" okolo 10 uzytkownikow). Z tego co wyczytalem w necie przy php nie ma takiej mozliwosci - musze utworzyc dodatkowa baze uzytkownikow i korzystajac z niej logowac sie do bazy przez www. Czy moje rozumowanie jest prawidlowe, jezeli tak to troche bez sensu tworzyc dodatkowa baze uzytkownikow, jezeli sam psql przechowuje te informacje w swoich zasobach. Pomimo, ze funkcja pg_connect pozwala stosowac zmienne odnosnie uzytkownika i hasla to jednak nie pozwala dostac sie bezposrednio do zapisanych w psql'u uzytkownikow. Prosze o rozwianie moich watpliwosci. Pozdrawiam Jacek ps. klawiatura bez polskich znakow Ten post edytował sbs2005 16.06.2011, 18:24:59 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
Dodam jeszcze, że oprogramowanie aplikacji od tej strony, sprowadza się do oprogramowania obsługi błędów funkcji z przedrostkiem pg_.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 16.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Dodam jeszcze, że oprogramowanie aplikacji od tej strony, sprowadza się do oprogramowania obsługi błędów funkcji z przedrostkiem pg_. mortus i cojack - nie mowcie ze jak wskaze baze do ktorej chce sie polaczyc - dajmy na to "zasoby" i potem okresle zmienna user'a i haslo potem napisze skrypt do logowania sie ze strony - to haslo jak i user beda odczytane z pg_user bez wskazywania na tabele, w ktorej sie znajduje ten plik (pg_user) - to takie proste ma byc (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
mortus i cojack - nie mowcie ze jak wskaze baze do ktorej chce sie polaczyc - dajmy na to "zasoby" i potem okresle zmienna user'a i haslo potem napisze skrypt do logowania sie ze strony - to haslo jak i user beda odczytane z pg_user bez wskazywania na tabele, w ktorej sie znajduje ten plik (pg_user) - to takie proste ma byc (IMG:style_emoticons/default/smile.gif) Dokładnie tak z tym, że login użytkownika, jak i hasło nie będą odczytywane z tabeli pg_user, ale porównywane z zawartością właśnie tej tabeli i jeśli się tam znajdą nastąpi połączenie. Jeśli odpowiednich danych w tabeli pg_user nie będzie, to funkcja zwróci błąd z komunikatem o braku dostępu. A co ważniejsze to nie tylko w PHP tak działa, ale również w C++ i innych językach programowania. Po prostu jeśli użytkownik jest użytkownikiem systemu baz danych i w tym systemie ma nadane jakieś uprawnienia, to zadaniem tego systemu jest kontrolowanie dostępu do określonych zasobów. Jeśli użytkownik nie ma odpowiednich uprawnień, to dostaje komunikat o braku uprawnień. Tyle. I tak jak mówię, w taki sam sposób działa to spod PHP, jak i spod C++, czy w ogóle każdego języka programowania. EDIT PHP-owa funkcja pg_connect, to tylko swego rodzaju "interfejs" do połączenia z systemem baz danych PostgreSQL. Funkcje z przedrostkiem pg_ to natomiast "interfejsy" do wykonywania innych działań na systemie baz danych PostgreSQL. Cytat W c++ by polaczyc sie z okreslona baza wykorzystuje sie polecenie mag.connect, po tym okresla sie zmienna user i haslo. Po wpisaniu okreslonego user'a jak i hasla w formularzu logowania nastepuje polaczenie z okreslona baza. (Baza psql posiada zapisanych w "pg_user" okolo 10 uzytkownikow). W opisanym przez Ciebie przypadku wspomnianym interfejsem jest obiekt mag, którego klasy nie znamy. Natomiast jeśli w tabeli pg_user jest 10 użytkowników, to w całej instytucji tylko tych 10 użytkowników może pracować na bazie danych (chyba, że architektura systemu wygląda inaczej, niż to opisałeś kilka postów wyżej). Ten post edytował mortus 17.06.2011, 13:39:30 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 01:01 |