Помогите с конектом к базе SQLSERVER

  • Автор темы mr.vetal
  • Дата начала

mr.vetal

Guest
Помогите с конектом к базе SQLSERVER

Следующий код:
<html>
<body>
<?php
$con = mssql_connect("BUHSERVER", "sa", "sspp");
mssql_select_db("BUHPDPU", $con);
$sql= "SELECT * FROM tPeople WHERE pnPeople < 5";
$rs= mssql_query ($sql, $con);
echo "The field number one is: ";
echo mssql_result ($rs, 0, 0);
mssql_close($con);
?>
</body>
</html>
выдет ошибку:
Fatal error: Call to undefined function: mssql_connect() in c:\localweb\index.php3 on line 4
 

mr.vetal

Guest
Я раскоментировал строку
extension=php_mssql.dll
Может этого не достаточно ?
 

baev

‹°°¬•
Команда форума
А сама библиотека-то есть?

Кстати:
Requirements for Win32 platforms.

The extension requires the MS SQL Client Tools to be installed on the system where PHP is installed. The Client Tools can be installed from the MS SQL Server CD or by copying ntwdblib.dll from \winnt\system32 on the server to \winnt\system32 on the PHP box. Copying ntwdblib.dll will only provide access. Configuration of the client will require installation of all the tools.

Requirements for Unix/Linux platforms.

To use the MSSQL extension on Unix/Linux, you first need to build and install the FreeTDS library. Source code and installation instructions are available at the FreeTDS home page: http://www.freetds.org/

Замечание: In Windows, the DBLIB from Microsoft is used. Functions that return a column name are based on the dbcolname() function in DBLIB. DBLIB was developed for SQL Server 6.x where the max identifier length is 30. For this reason, the maximum column length is 30 characters. On platforms where FreeTDS is used (Linux), this is not a problem.
http://www.php.net/manual/ru/ref.mssql.php
 

mr.vetal

Guest
Библиотека есть.
ntwdblib.dll тоже есть, без нее SQL SERVER не работал бы.
Учил Access, VB, SQL, а с этим PHP с первого раза, блин, такой трабл, что и на форуме люди помочь не могут.
Как это функция есть, PHP ее не видит? кошмар какой-то
 

Bremen

Новичок
Poprobui proverit chast MSSQL
[MSSQL]
; Allow or prevent persistent links.
mssql.allow_persistent = On

; Maximum number of persistent links. -1 means no limit.
mssql.max_persistent = -1

; Maximum number of links (persistent+non persistent). -1 means no limit.
mssql.max_links = -1

; Minimum error severity to display.
mssql.min_error_severity = 10

; Minimum message severity to display.
mssql.min_message_severity = 10

; Compatability mode with old versions of PHP 3.0.
mssql.compatability_mode = Off

; Connect timeout
mssql.connect_timeout = 10

; Query timeout
;mssql.timeout = 60

; Valid range 0 - 2147483647. Default = 4096.
mssql.textlimit = 2147483647

; Valid range 0 - 2147483647. Default = 4096.
mssql.textsize = 2147483647

; Limits the number of records in each batch. 0 = all records in one batch.
;mssql.batchsize = 0

; Specify how datetime and datetim4 columns are returned
; On => Returns data converted to SQL server settings
; Off => Returns values as YYYY-MM-DD hh:mm:ss
;mssql.datetimeconvert = On

; Use NT authentication when connecting to the server
mssql.secure_connection = Off

; Specify max number of processes. Default = 25
;mssql.max_procs = 25
U menia tak
 

valerchik

Guest
если хочешь сконнектиться с MSSQL не через ОДБЦ а через mssql_connect
тогда надо, чтоб на компе, где стоит РНР стоял и MSSQL клиент. иначе хрен сконнектишься. только лишь клиент, сервер ставить не обязательно.
 

ИванЧай

Guest
У меня таким макаром коннектится и с клиентов без установки на них клиента MSSQL Server
 

ИванЧай

Guest
По идее должно коннектиться.
Можно еще для очистки совести посмотреть в php.ini параметр extension_dir, что указывает на каталог с php_mssql.dll.
 

valerchik

Guest
Автор оригинала: ИванЧай
По идее должно коннектиться.
Можно еще для очистки совести посмотреть в php.ini параметр extension_dir, что указывает на каталог с php_mssql.dll.
extension_dir тут не при делах...
РНР говорил бы что либ такой-то не найден...
а тут все есть, просто не коннектиться...
 

Grumbold

Новичок
расширения в extension работают только если php.ini лежит в C:\WINNT. если php.ini в d:\php440 (даже d:\php440 прописан в путях Windows) - не работает. (может быть, ограничение на длину переменной PATH?)
у меня:
extension_dir = "d:\php440\extensions\"
...
extension=php_mssql.dll
extension=php_gd2.dll
extension=php_interbase.dll

вылезла другая проблема - при подключении к MSSQL2000 выводит русские символы в DOS-кодировке.
 

valerchik

Guest
Автор оригинала: Grumbold

вылезла другая проблема - при подключении к MSSQL2000 выводит русские символы в DOS-кодировке.
в этом случае надо ключик в реестре поправить на клиенте MSSQL
 

Grumbold

Новичок
а ключ такой:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\DB-Lib
параметр AutoAnsiToOem нужно выставить в OFF
 
Сверху