Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Lokalny skrypt nie zaczytuje danych z zewnętrznej bazy.
kopek
post
Post #1





Grupa: Zarejestrowani
Postów: 67
Pomógł: 0
Dołączył: 24.02.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Napisałem stronę w PHP, do której podpięta jest baza MySQL. Strona umieszczona jest na zewnętrznym serwerze i nie ma problemu z zaczytywaniem danych z tej bazy. Przeniosłem stronę na lokalny komputer (uprzednio instalując krasnala) i PHP działa dobrze natomiast MySQL nie pobiera danych z zewnętrznej bazy. Komputer na którym jest strona ma połączenie z internetem więc zastanawiam się gdzie szukać przyczyny problemu? Zaporę AVG też próbowałem wyłączać ale to nie ona stanowi problem.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


W bazie do której się łączysz musi znajdować się użytkownik zdefiniowany dla twojego komputer (ip lub host).

MySQL może mieć wielu użytkowników jednak każdy z nich musi mieć przypisane skąd będzie się łączył. Połączenia z innych hostów są ignorowane.


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
Go to the top of the page
+Quote Post
kopek
post
Post #3





Grupa: Zarejestrowani
Postów: 67
Pomógł: 0
Dołączył: 24.02.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Do połączenia z bazą używam poniższej funkcji, zgodnie z tym cop napisałeś mam się zalogować na konto sql.konta.pl i tam dodać użytkownika? Nie za bardzo rozumiem czemu z każdego miejsca (dowolny zewnętrzny serwer) strona zaczytuje dane z bazy a tylko z lokalnego komputera pod krasnalem sobie z tym nie radzi.
  1. function connection() {
  2. // serwer
  3. $mysql_server = "sql.konta.pl";
  4. // admin
  5. $mysql_admin = "***";
  6. // hasło
  7. $mysql_pass = "***";
  8. // nazwa baza
  9. $mysql_db = "***";
  10. // nawiązujemy połączenie z serwerem MySQL
  11. @mysql_connect($mysql_server, $mysql_admin, $mysql_pass)
  12. or die('Brak połączenia z serwerem MySQL.');
  13. // łączymy się z bazą danych
  14. @mysql_select_db($mysql_db)
  15. or die('Błąd wyboru bazy danych.');
  16. }
Go to the top of the page
+Quote Post
toffiak
post
Post #4





Grupa: Zarejestrowani
Postów: 395
Pomógł: 80
Dołączył: 24.08.2009

Ostrzeżenie: (0%)
-----


Czyli możesz połączyć się z dowolnego hosta z serwerem bazy danych tylko nie z localhostu ?
Jeśli tak to na początek nie uktywaj błędów w skrypcie. Usuń wszystkie @.

Czy host sql.konta.pl jest prawidłowy mnie przekierowuje na localhost, host musi być hostem na któym jest baza danych.

Ten post edytował toffiak 7.02.2012, 08:49:18


--------------------
Go to the top of the page
+Quote Post
kopek
post
Post #5





Grupa: Zarejestrowani
Postów: 67
Pomógł: 0
Dołączył: 24.02.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Znaki @ usunięte, jednak nie wpłynęło to w żaden sposób na działanie. Nadal nie zaczytuje rekordów z bazy. Na początku pliku mam zdeklarowane coś takiego:
  1. ini_set('display_errors', 1);
  2. require "function.php";

Połączenie z bazą wywołuję za pomocą:
  1. connection();


Host sql.konta.pl przenosi mnie do progreso.pl/sql/ ale tak to było zdefiniowane cały czas i działało a z bazą nic się nie zmieniło.

Być może w Krasnalu trzeba coś przełączyć żeby pozwalał na połączenia z zewnętrzną bazą?

Dziwi mnie, że nie wywala żadnych błędów związanych z połączeniem z bazą tak jakby wszystko było w porządku.

Okazało się, że błąd składniowy powodował zatrzymanie skryptu, jednak po jego korekcie mam taki komunikat:
Warning: mysql_connect(): Access denied for user 'xxx'@'x.x.x.x' (using password: YES) in c:\usr\krasnal\www\delegacja_new\function.php on line 39
Brak połączenia z serwerem MySQL.

Ktoś da mi jakąś wskazówkę co zrobić żeby móc się z bazą połączyć, nie za bardzo rozumiem czemu nagle nie ma dostępu skoro zmieniła się tylko lokalizacja plików a nie żadne ustawienia czy zmienne?

Ten post edytował kopek 7.02.2012, 09:32:55
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 11:14