Witam,
Mam bazę danych MSSQL w webio.pl i stronę umieszczoną na nazwa.pl. Niestety, ale na stronie muszę wykorzystać dane które znajdują się w bazie MSSQL. Danych nie można przenieść, więc w grę wchodzi jedyne połączenie z bazą. Próbowałem – na podstawie przykładów w sieci – wykorzystać mssql_connect(). Niestety bez sukcesu. Wygląda na to, że nazwa.pl nie zapewnia chyba sterownika do połączenia z bazą MSSQL…
Czy w takim razie jest jakakolwiek możliwość, żeby połączyć się i pobrać dane?
To zależy co zapewnia webio. Z tego co wiem oferują zdalny dostęp do bazy w swoich droższych planach, w najtańszym takiego dostępu nie ma.
Dostęp do bazy z zewnątrz raczej mam... bo bez problemu łącze się z Visual Studio i Microsoft SQL Server Management :)
Zresztą i tak mam najwyższy pakiet w webio, więc to chyba nie to.
Problem jest gdy staram się uzyskać dostęp do bazy z poziomu strony www - napisanej w php - która siedzi na nazwa.pl
Kod którym staram się połączyć:
mssql_connect('mssql4.webio.pl,2401', 'uzytkownik', 'haslo');
mssql_select_db('baza_danych');
$q = mssql_query('SELECT Cena FROM lista_materialow');
while ($r = mssql_fetch_assoc($q)) {
echo $r['Cena'] . '<br />';
}
mssql_close();
W takim razie jeżeli masz w webio dostęp z zewnątrz to problem musi leżeć po stronie nazwa.pl lub po stronie kodu, który podałeś. Niestety mam odruchy wymiotne na widok PHP i nie pomogę z tym connection stringiem. Spróbuj zapytać w dziale PHP, jeżeli kod PHP jest OK to wtedy możesz jedynie zwrócić się do nazwa.pl albo przenieść dane.
Btw. Jak oceniasz jakość świadczonych usług na webio?
AdamPL napisał(a)
Btw. Jak oceniasz jakość świadczonych usług na webio?
Korzystam z webio od niedawna, wiec dużo nie mogę napisać. Pozytywne wrażenie sprawia pomoc techniczna - działa błyskawicznie.
Odpowiedź (która rozwiązała problem) na mojego maila, dostałem dosłownie po 10min.
dostajesz jakieś błędy?
spróbuj tak:
error_reporting(E_ALL | E_NOTICE | E_STRICT);
mssql_connect('mssql4.webio.pl,2401', 'uzytkownik', 'haslo') or die('blad polaczenia');
mssql_select_db('baza_danych') or die('blad wyboru bazy');
$q = mssql_query('SELECT Cena FROM lista_materialow') or die('blad zapytania');
while ($r = mssql_fetch_assoc($q)) {
echo $r['Cena'] . '<br />';
}
mssql_close();
echo 1;
co się wyświetla?
zanim mogłeś się połączyć z bazą z kompa to dodawałeś swoje ip w panelu w webio albo coś? może w tym problem że można się łączyć tylko z wybranych ip
konrados napisał(a)
co się wyświetla?
Nic, pusta strona - bez błędów, bez danych!
konrados napisał(a)
zanim mogłeś się połączyć z bazą z kompa to dodawałeś swoje ip w panelu w webio albo coś? może w tym problem że można się łączyć tylko z wybranych ip
Webio nie wymaga podania w panelu konfiguracji adresu IP żeby się połączyć.
jak się nic nie wyświetla to coś masz zesrane i musi być błąd, bo na końcu kodu dałem echo 1; na może masz coś w php.ini zesrane z raportowaniem błędów
daj po każdym średniku echo 1; i policz ile jedynek się wyświetla, wtedy będziesz wiedział która linijka powoduje błąd
Tak jak napisałem na początku – strona jest umieszczona na nazwa.pl - wiec błędy w php.ini można raczej wykluczyć :)
Wygląda na to, że nazwa.pl nie wspiera połączeń z MSSQL dla PHP – zwiecha jest na mssql_connect().
Problem w tym, że strony nie mogę przenieść, bazy również - a muszę się jakoś do niej dobrać :/
... przeczytaj jeszcze raz mój post, skoro się nie pojawia na stronie nawet '1' tzn. że występuje jakiś błąd, a skoro nie pojawia się błąd to masz zesrany php.ini, może na nazwa.pl raportowanie błędów masz do pliku, spróbuj wyłapać błąd wyjątkami http://php.net/manual/en/language.exceptions.php
chociaż wyjątki chyba nie udostępniają treści błędu z php (nie wiem nigdy nie używałem), więc http://php.net/manual/en/function.set-error-handler.php i napisać funkcje która wyświetli błąd
ini_set('display_errors', 1);
Na początku.
@konrados: Nazwa nawet nie udostępnia całościowo takich zabawek, więc nie wiem gdzie można było "zesrać"...
Fatal error: Call to undefined function mssql_connect()
mamy odpowiedź, nazwa ma wyłączony moduł mssql