Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Podłączanie do bazy danych MSSQL z PHP
Rafał B
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 1.12.2004

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


Witam serdecznie
Mam pewien problem z podłączeniem się do bazy MSSQL z poziomu php. Jest to baza programu do obsługi firmy. Problem wygląda tak, że mam lokalnie uruchomiony serwer ale nie na localhost tylko np. \\SERWER\CDN_OPTIMA. Nie mogę w żaden sposób wykonać podłaczenia do bazy. Jeżeli skonfiguruje żródło ODBC to przez funkcje ODBC jestem w stanie się normalnie podłączyć i odczytać jakąś tabelę. Wolałbym jednak wykorzystywać operacje bezpośrednio na bazie. Jestem początkujący i nie moge sobie z tym poradzić. Prosze o jakieś sugestie
Go to the top of the page
+Quote Post
SongoQ
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Musisz podac host (adres ip) wtedy powinienies sie polaczyc.


--------------------
Go to the top of the page
+Quote Post
No1B
post
Post #3





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 10.11.2003

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


sam adres ip nie wystarczy. w mssql'u wystepuja takze tzw. instancje (rownolegle "serwery" w obrebie tego samego komputera/serwera) - u Ciebie 'CDN_OPTIMA'. Wazne jest w jaki sposob laczysz sie z serwerem. Czy poprzez protokol Named Pipe, czy moze TCP/IP.
Oczywiscie lepszy, nowszy i wydajniejszy jest TCP/IP. Sprawdz.
Najprawdopodobniej u Ciebie pierwszy jest Named Pipe. Uruchom "Client Network Utility" (w uruchom wpisz cliconfg.exe) i ustaw TCP/IP. Dobrze jest tez to ustawic po stronie serwera (odpowiednio Server Network Utility) na okreslonej instancji.

Jesli bedziesz mial z tym problemy - daj znac - pomozemy.

Pozdrawiam


--------------------
Apache 2.0.53 | PHP 5.0.3 | MSSQL 2000 SP4
Go to the top of the page
+Quote Post
Rafał B
post
Post #4





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 1.12.2004

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


Sprawdziłem w "Client Network Utility" i mam włączone Named Pipe i TCP/IP w zakładce alias mam dwa aliasy do protokołu TCP/IP,
1. Alias serwera: ATHLON i nazwa serwera ATHLON\CDN_OPTIMA
2. Alias serwera: ATHLON\CDN_OPTIMA i nazwa serwera ATHLON\CDN_OPTIMA
Jak próbuje dodać dodać jeszcze jeden np. Alias serwera localhost i nazwa serwera: ATHLON lub IP np. 192.168.0.1 czy 127.0.0.1 to dalej nie mogę połączyć się z serwerem z poziomu php. Mam komunikat "Nie można połączyć"
Czy mam dodawać w ogóle alias czy wystarczy, że mam włączone TCP/IP i powinno działać? Serwer jest uruchomiony na tym samym kompie, z którego próbuje uzyskać połączenie w php. W samym "silniku" bazy nie mogę znaleźć opcji do konfiguracji TCP/IP. Jak skonfigurować TCP/IP w "Server Network Utility"?
Dziękuję za podpowiedź

Pozdrawiam
Rafał
Go to the top of the page
+Quote Post
No1B
post
Post #5





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 10.11.2003

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


Server Network Utility jest narzedziem ktore znajdziesz na serwerze SQL.
Tam nalezy wybrac instancje o ktora chodzi i sprawdzic na ktorym porcie
jest postawiona ta instancja (u mnie 2433).

sprobuj sie polaczyc poprzez:
  1. <?php
  2. @$db = mssql_connect($hostname:port,$username,$password);
  3. ?>


alias jest niepotrzebny

Pozdrawiam

Ten post edytował No1B 28.04.2005, 09:55:22


--------------------
Apache 2.0.53 | PHP 5.0.3 | MSSQL 2000 SP4
Go to the top of the page
+Quote Post
Rafał B
post
Post #6





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 1.12.2004

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


Witma serdercznie

No1B napisał:

sprobuj sie polaczyc poprzez:

Kod php:
  1. <?php
  2. @$db = mssql_connect($hostname:port,$username,$password);
  3. ?>

alias jest niepotrzebny

Nie da rady. Nie wiem jaki wpisać "hostname" CDN_OPTIMA nie działa, ATHLON/CDN_OPTIMA też nie, IP też nic nie daje. sadsmiley02.gif
Jak wybrać tą instancę? Na ikonce serwera SQL nie mogę ustawiać żadnych parametrów, tylko ewentulanie: Serwer SQL, MSDE, i jeszcze jedną opcję nie pamiętam jaką. Czy są jakieś narządzia do konfiguracji serwera?
dzięki za pomoc.
pozdrawiam
Rafał
Go to the top of the page
+Quote Post
No1B
post
Post #7





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 10.11.2003

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


server skonfigurujesz Server Network Utility

pozdrawiam


--------------------
Apache 2.0.53 | PHP 5.0.3 | MSSQL 2000 SP4
Go to the top of the page
+Quote Post
Rafał B
post
Post #8





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 1.12.2004

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


Witam serdecznie
Dzięki za podpowiedzi. Zadziałało, przynajmniej lokalnie. Jeszcze nie próbowałem po sieci. Przyczyna była prosta. Przy instalacji php standardowo ma wyłączone extension php_mssql.dll w php.ini. I to chyba było powodem. Nie wiem tylko dlaczego nie wyrzucił jakiegoś innego komunikatu tylko "unable connect to database"?. Działa przy ustawieniu:
  1. <?php
  2. $hostname=&#092;"127.0.0.1CDN_OPTIMA\";
  3. @$db = mssql_connect($hostname:port,$username,$password);
  4. ?>


Dzięki serdeczne za pomoc
pozdrawiam
Rafał
Go to the top of the page
+Quote Post
sumar
post
Post #9





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 31.01.2004

Ostrzeżenie: (20%)
X----


W moim przypadku instalacja MSDE na Win2000 wyglądała tak. Też długo miałem Unable connect,aż do konfiguracji svrnetcn.exe

Kroki do instalacji mssql_connect na php.

1. W pliku php.ini należy odznaczyć

extension=php_mssql.dll

2. Kopiujemy plik ntwdblib.dll z katalogu php/dlls znajdującego się w instalacji php, do katalogu windows/system32

Teoretycznie powinno starczyć.
Jeśli jednak nadal mamy Unable connect ...możemy wykonać następujący krok.

Odnajdujemy w systemie plik svrnetcn.exe. (Uruchom> svrnetcn.exe) Jeśli go nie ma powinien być na płytce z instalacją SQL Server. Uruchamiamy plik i jeśli po uruchomieniu w Enabled protocols nie mamy TCP/IP dodajemy. Następnie resetujemy server SQL. Powinno działać.
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 - 10:44