| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MS SQL Server > коннект из под FreeBSD |
| Автор: Luceus 21.4.2006, 16:51 |
| Всем хай! Есть сервер на FreeBSD, и в локалке есть MSSQL на Microsoft Windows 2003. Задача в следующем, нужно с помощью ПХП достучаться к MSSQL. Все установили, ничего не работает. Пишет, что не может плюключится к серверу. По телнету машину и порт видно. Как быть? Спасибо. |
| Автор: Vit 21.4.2006, 23:11 |
| На сервере установленны TCP/IP библиотеки (в Server Network Utility)? Попробуйте использовать IP адрес сервера вместо имени сервера. PS. Почитайте документацию по PHP, Linux обычно коннектится к MS SQL Server через FreeTDS, возможно вам нужны её библиотеки устанавливать дополнительно. Я лично не знаю как PHP коннектится к серваку под Linux, какой промежуточный слой используется. |
| Автор: Luceus 23.4.2006, 20:29 |
| Спасибо за ответ! |
| Автор: Vit 24.4.2006, 15:08 |
Помогло? Если да то что? |
| Автор: Luceus 25.4.2006, 11:00 |
| Пока нет, поиски рулят. Когда запустится, отпишу что да как. |
| Автор: Luceus 25.4.2006, 22:55 |
| 1. Коннект с базой MS SQL установлен. Проблема была в следующей. FreeTDS нужно устанавливать с поддержкой msdlib. Это раз, во вторых, при коннекте с пхп скрипта нужно обязательно потом указывать через двоеточие порт. Например: 10.10.2.5:1433. Сделав это все заработало. 2. Натолкнулись теперь над другую проблему. =) Линукс не понимает кодировку СР1251 =( И выдает ошибки, когда вызываешь query. Как это теперь исправить? В мануалах написано, что нужно пхп установить с поддержкой iconv. Это с делали. Написано что нужно прописать переменные в apachectl, это тоже сделали. Но ничего все=равно не работает... в ответ выдается: ?????????. С английской базой все работает пучком. Как быть? |
| Автор: Vit 26.4.2006, 04:22 |
| Попробуй передавать русский текст через параметры |
| Автор: Luceus 26.4.2006, 10:38 |
| Заработало =) Проблема была в том, что нужно было установить кодировку во FreeTDS. Добавил одну строчку в [global] файла freetds.conf из /usr/local/etc/freetds.conf: client charset = CP1251 И работает... Жжужит. Спасибо Vit за поддержку. |