SQL 2000 + PHP 4 + Apache (Win)

Сергей Л
Дата: 05.07.2006 17:13:29
Я использую следующую конфигурацию:
PC1 - Windows, Apache 1.33, PHP 4.4
PC2 - windows, SQL 2000

Доступ к БД с РС1 имеется, с кирилицей работает без проблем.


Раньше я тестировал все это на одном компьютере. Мне так и не удалось из PHP подключиться к локальной БД. В настройках PHP соединения (библиотека mssql) указывал и адрес 127.0.0.1 и localhost и имя компьютера. Пришлось разносить на два компьютера.

Вопрос 1. Может кто из вас пробывал такую конфигурацию, чтобы все это было на одном компьютере? (Мне нужно сделать резервный сервак, но слишком дорого покупать еще два сервака (один еще как-то потянут)).
Вопрос 2. Если у кого-то это работало, то что нужно было настроить?
Впорос 3. Может кто знает, как работает PHP 5 с MS-SQL ?


У меня есть еще вопросы, но на несколько иные темы:

Вопрос 4. Кто-нибудь тестировал связку SQL-2000 с PHP + Apache под FreeBSD (интересует поддержка кирилицы да и все остальное) ?
Вопрос 5. На чем можно сделать интерфейс клиента, чтобы использовал HTML или XML для связи с БД? (это нужно для работы через медленный интернет - GPRS или модем. На данный момент интерфейс реалзован на базе IE - есть несколько минусов, которые пока не придумал как грамотно побороть - это длинные списки (комбобоксы) и кэширование части данных.
erdn
Дата: 05.07.2006 19:14:55
Ну я использую подобную связку. Задавайте конкретные вопросы. А то вопрос "что нужно настроить" как-то настораживает...
erdn
Дата: 05.07.2006 19:17:54
Коннект с PHP на MS SQL 2000 без проблем идёт через odbc_connect например.
erdn
Дата: 05.07.2006 19:19:29
5-й вопрос просто не понял, что вы имели ввиду?
Сергей Л
Дата: 05.07.2006 20:17:43
erdn
Ну я использую подобную связку. Задавайте конкретные вопросы. А то вопрос "что нужно настроить" как-то настораживает...


Для начала привожу данные из phpinfo():

Apache/1.3.34 (Win32) PHP/4.3.11

MSSQL Support enabled
Active Persistent Links 0
Active Links 0
Library version 7.0

Directive Local Value Master Value
mssql.allow_persistent On On
mssql.batchsize 0 0
mssql.compatability_mode Off Off
mssql.connect_timeout 5 5
mssql.datetimeconvert On On
mssql.max_links Unlimited Unlimited
mssql.max_persistent Unlimited Unlimited
mssql.max_procs 25 25
mssql.min_error_severity 10 10
mssql.min_message_severity 10 10
mssql.secure_connection Off Off
mssql.textlimit Server default Server default
mssql.textsize Server default Server default
mssql.timeout 60 60

PC1 - windows server 2003 + apache + php
PC2 - windows server 2003 + mssql 2000 standart sp4

При установке библиотеки PHP с php-ешной ntwdblib.dll сервер был не доступен. Я заметил эту DLL-ку своей (версия 2000.80.2039.0), которая шла в составе SQL сервера. Появился доступ к SQL серверу.

Когда я ставил все на одном компьютере, то там было:
windows xp prof + apache + php + MSDE 2000 SP 3 (инсталирована с сетевым доступом)
Про версиюю ntwdblib.dll для этой конфигурации сейчас сказать не могу - перезаписывал, но какой точно версии - не записано.
Почему, когда все поставил на один компьютер, я не смог обратиться к SQL серверу? На что мне нужно обратить внимание?
Сергей Л
Дата: 05.07.2006 20:22:35
erdn
Коннект с PHP на MS SQL 2000 без проблем идёт через odbc_connect например.


ODBC мне не подходит, так как в планах перейти на apache под freebsd

на PHP я пользуюсь библиотекой mssql функций
Сергей Л
Дата: 05.07.2006 20:30:05
erdn
5-й вопрос просто не понял, что вы имели ввиду?


Это я пока размышляю. Сейчас клиент сделан в виде HTML-интерфейса и заточен под возможности IE (оперу и нетскапе не поддерживаю - муторно равнятся на 10% интернет аудитории). Но есть проблемы при построении формы с SELECT c длинным списками - даже используя сжатия получается страница не менее 40кб на 3000 записях. Да и муторно в IE выбирать из длинного списка. - Это перовочередная задача - решить проблему выбора из длинющего списка и сократить размер страницы.

У меня многие формочки в сжатом виде по 5 максимум 20 кб. Все быстро работает даже через модем. А вот с длинющими списками - начинаются и тормоза при генерации на web-сервере (тратиться до 1-2 сек), и при передаче полсотни килобайт.

Вот и думаю, а существуют ли какие-либо клиенты, типа VBА, ACCESS, но которые бы работали с HTML или XML данными в качестве данных.

Я конечно сейчас не начну сразу весь интерфейс переписывать, но возможно поставил бы на будущую модернизацию. Ведь надо же будет себе придумать занятие, когда все будет сделано :)
Сергей Л
Дата: 05.07.2006 20:51:01
erdn
Коннект с PHP на MS SQL 2000 без проблем идёт через odbc_connect например.


Я вот что подумал, если ты пользуешься для соединения с SQL 2000 ODBC-коннетом, то может пояснишь, какие были проблемы? Может по типу данных, или по размеру, или с процедрумаи или с пакетом SQL-команд?

А как по времени выборки скажем из результируещего набора в 5000 записей - большие будут тормоза?

Собственно мне в классе доступа к базе заменить mssql_ на odbc_ не сложно, но какие я могу поиметь проблемы? Может на выходных поэкспериментрую...
erdn
Дата: 06.07.2006 19:48:31
Сергей Л
erdn
Коннект с PHP на MS SQL 2000 без проблем идёт через odbc_connect например.


Я вот что подумал, если ты пользуешься для соединения с SQL 2000 ODBC-коннетом, то может пояснишь, какие были проблемы? Может по типу данных, или по размеру, или с процедрумаи или с пакетом SQL-команд?

А как по времени выборки скажем из результируещего набора в 5000 записей - большие будут тормоза?

Собственно мне в классе доступа к базе заменить mssql_ на odbc_ не сложно, но какие я могу поиметь проблемы? Может на выходных поэкспериментрую...


Не было у меня проблем. С этим.
И скорость на больших селектах вполне утраивает.

Вот с MySQL из MS SQL к My SQL были, траблы и неманенькие из-за глючнутости то-ли ODBC коннекта к MySQL то-ли из-за глючнутости определения типа данных в последнем...
erdn
Дата: 06.07.2006 19:52:38
Сергей Л
erdn
5-й вопрос просто не понял, что вы имели ввиду?


Это я пока размышляю. Сейчас клиент сделан в виде HTML-интерфейса и заточен под возможности IE (оперу и нетскапе не поддерживаю - муторно равнятся на 10% интернет аудитории). Но есть проблемы при построении формы с SELECT c длинным списками - даже используя сжатия получается страница не менее 40кб на 3000 записях. Да и муторно в IE выбирать из длинного списка. - Это перовочередная задача - решить проблему выбора из длинющего списка и сократить размер страницы.

У меня многие формочки в сжатом виде по 5 максимум 20 кб. Все быстро работает даже через модем. А вот с длинющими списками - начинаются и тормоза при генерации на web-сервере (тратиться до 1-2 сек), и при передаче полсотни килобайт.

Вот и думаю, а существуют ли какие-либо клиенты, типа VBА, ACCESS, но которые бы работали с HTML или XML данными в качестве данных.

Я конечно сейчас не начну сразу весь интерфейс переписывать, но возможно поставил бы на будущую модернизацию. Ведь надо же будет себе придумать занятие, когда все будет сделано :)


40 Кб на 3000 записях -- это имхо, совсем не плохо :-)
Ни най насчёт клиентов на vba, на perl имхо или php совсем не сложно такие написать/найти и скачать бесплатно.