Problem z dostępem do bazy danych |
Problem z dostępem do bazy danych |
7.06.2018, 10:20:08
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 7.06.2018 Ostrzeżenie: (0%) |
Witam.
Pomagałem znajomemu odzyskać hasło do CMS. Zrobiłem to logując się do MySQL. Niestety najpierw musiałem z poziomu panelu home.pl, zmienić hasło do bazy danych i teraz po wejściu na stronę pojawia się komunikat: Access denied for user 'baza.nr.2'@'localhost' (using password: YES) Rzecz w tym, że ta strona korzysta z dwóch baz danych jednocześnie. W jednej znajduje się cała "struktura" strony (nazwijmy ją baza.nr.1) a w drugiej wszystkie na bieżąco dodawane elementy np. zdjęcia, filmy itp. (nazwijmy baza.nr.2) Plik php wygląda następująco: <? session_start(); // Po��czenie do bazy danych $conn = mysql_pconnect("localhost","baza.nr.1","hasło1"); $db = mysql_select_db("baza.nr.1"); $image_path = "/img2/"; $admin_user = 'admin'; $sqlQuery = "SELECT pass FROM tb_user WHERE u_name = '$admin_user'"; $sqlResult = mysql_query($sqlQuery); if (mysql_numrows($sqlResult) > 0) { list($admin_pass) = mysql_fetch_row($sqlResult); } else { $admin_pass = 'password'; } ?> Przed zmianą hasła do baza.nr.2, wszystko działało poprawnie. Czy powinienem w tym pliku coś zmienić czy może muszę zmienić coś (czyli pewnie podać nowe hasło) w panelu MyAdmin? Dodam, że w linijkach: $conn = mysql_pconnect("localhost","baza.nr.1","hasło1"); $db = mysql_select_db("baza.nr.1"); zmieniałem bazy danych na baza.nr.2 i odpowiednio hasło i nie pomogło |
|
|
7.06.2018, 14:17:27
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) |
1. hasła nie zmieniasz dla bazy, tylko dla użytkownika na danym serwerze BD.
2. mysql_pconnect jako drugi parametr przyjmuje nazwę użytkownika, a nie bazy danych. |
|
|
7.06.2018, 14:49:34
Post
#3
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 7.06.2018 Ostrzeżenie: (0%) |
Czyli rozumiem, że baza danych jest jedna, ale każdy z użytkowników ma uprawnienia dostępu do innych tabel?
|
|
|
7.06.2018, 15:07:16
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 455 Pomógł: 6292 Dołączył: 27.12.2004 |
Odnosze wrazenie ze zle rozumiesz pojecie "uzytkownika".
Baz danych moze byc i tysiace. Dla kazdej z bazy danych mozesz dodac dowolna ilosc uzytkownikow z roznymi uprawnienianimi do roznych tabel. I teraz uzytkownik bazy danych to nie to samo co uzytkownik twojej aplikacji. Twoja aplikacja ma sie laczyc do bazy danych ciagle i tym samym uzytkownikiem bazy danych niezaleznie jaki uzytkownik twojej aplikacji aktualnie ja odpala. Tutaj tez wychodzi chyba kolejny problem twojej aplikacji ze korzystasz z dwoch baz danych. Jedna dla jakiejs konfiguracji a druga do czegos innego. Po co? Czemu hasla uzytkownikow twojej aplikacji trzymasz innej bazie? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
7.06.2018, 15:18:15
Post
#5
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 7.06.2018 Ostrzeżenie: (0%) |
To jest strona, której ja nie robiłem. Po prostu chciałem pomóc koledze a zaszkodziłem. A więc sprawa wygląda tak, że jest dwóch użytkowników i dla jednego z nich zmieniłem hasło. Teraz wchodząc na stronę, pojawia się komunikat, który podałem wcześniej. Dla obu użytkowników po zalogowaniu w panelu MySQL dostępne są inne tabele. Da się z tego jakoś wybrnąć?
|
|
|
8.06.2018, 07:01:50
Post
#6
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
ustawić nowe hasło dla tego usera bazy które zmieniłeś do konfiguracji CMS
Ten post edytował Pyton_000 8.06.2018, 07:02:09 |
|
|
Wersja Lo-Fi | Aktualny czas: 25.04.2024 - 00:41 |