PHP connection to SQL Server database

Source: Internet
Author: User

In order to connect PHP sql2005, I found a lot of information on the network in my CSDN blog. It's 3:05 in the evening.

PHP connection sql2005 problem, now integration, while the FAQ integration.

The tutorial I wrote earlier:

Configure the system before connecting:

1. Check the file Php5.2.5/ntwdblib.dll by default there is one, cannot connect and replace.

Download the correct version of Ntwdblib.dll (2000.80.194.0), Address: Http://webzila.com/dll/1/ntwdblib.zip

2. Configure PHP

A. Open php.in to remove the extension=php_mssql.dll annotation symbol.

B. Open php.in to change mssql.secure_connection = off to ON.

C, copy the Php_mssql.dll to the php.in extension_dir the specified directory or the system system32 directory. (Php_mssql.dll is available in the ZIP installation package for PHP).

You will need to restart Apache after the above steps have been completed.

Note: In practice, it is found that the machine must be restarted, not just IIS, if it is manually installed through PHP compressed files to IIS.

3. Configure SQL Server
A. Running SQL Server Configuration Manager: SQL Server Config Manager, opening protocol protocols
B. Allow Named pipes "Named Pipes" and "TCP/IP"
C. Right-click on "TCP/IP" to open the Properties property tag "addresses"
D. Filling in TCP dynamic port "TCP Ports" 1433
E. Restarting SQL Server

-----------------------------------------------------------------------------------------------
4. Connect MS SQL Server 2005 using the following method:
The code is as follows:

Link Database
$conn =mssql_connect (' localhost ', ' sa ', ' 123456 ');
mssql_select_db (' Gu_dde ', $conn);
Query statement
$Query = "SELECT * from Dde_top";
$AdminResult =mssql_query ($Query);
Output results
$Num =mssql_num_rows ($AdminResult);
for ($i =0; $i < $Num; $i + +)
{
$Row =mssql_fetch_array ($AdminResult);
Echo ($Row [1]);
Echo ("
");
}
?>

Input http://127.0.0.1

-----------------------------------------------------------------------

5.FAQ FAQ:

1 Error:

Fatal Error: Call to undefined function mssql_connect ()

Solve:

Using the MSSQL_ series functions
To use both of these, you need to set the php.ini:
(1) Allow DCOM, need to be in php.ini; Com.allow_dcom=true before the semicolon ";" Remove.
(2) The use of MSSQL extension, need php.ini; Extension=php_mssql.dll before the semicolon ";" Remove. Key
(3) Confirm that Extension_dir is the correct path, take this machine as an example: Extension_dir = "C:/appserv5.2.6/php/ext".
(4) If the machine error is still not found C:/appserv5.2.6/php/ext/php_mssql.dll but clearly exists this file.
Workaround: Copy the Php_mssql.dll,ntwdblib.dll to the system directory/system32 to restart the test.
(Note: The above two DLL files are not in the same directory, mine is C:/appserv5.2.6/php/ext/php_mssql.dll;c:/appserv5.2.6/php/ntwdblib.dll)
Also, remember to restart the server after you set it up well.

2.mssql_connect () Unable to connect to server

Verify that the SQLServer2005 server is healthy. Check that TCP/IP is enabled

Right-click to view the properties at the same time:

has enabled whether to select Yes

After confirming that the server is correct, confirm that the Ntwdblib.dll file location is placed under C:/windows/system32

Also make sure that the version of Ntwdblib.dll this file corresponds to the version of SQL Server:

The following are the corresponding relationships:

2.ntwdblib.dll version for 2000.2.8.0 is the corresponding SqlServer2000 (this is the Web check data and guessing, not loaded 2000)

2.ntwdblib.dll version for 2000.80.194.0 is the corresponding SqlServer2005 (this is the experimental proof can be used, I was a notebook loaded 2005)

3.ntwdblib.dll version for 2000.80.2039 is correspondence SqlServer2008 (this is guessing not loaded 2008)

6. Other issues:

If PHP Apache SQL Server2000 are on the same machine, access is basically no problem.

If SQL Server2000 and PHP machines are separate, you need to verify that the machine name of the machine where the ping SQL Server is located can pass, if it does not pass, modify the Hosts file under the/system32/drivers/etc of the machine where PHP is located, add a line Machine name of machine IP SQL Server where SQL Server is located.

If you are still unable to access it, you need to verify that the machine on which PHP is located has installation MDAC. or simply install SQL Server client as well.

Solve the problem as follows:

1. Download two files Php_mssql.dll and Ntwdblib.dll

Php_mssql.dll If this is not copied to C:/windows/system32, it will be easy to appear

Ntwdblib2093.dll this file to pay attention to the version, or behind the very depressed.

PHP connection to SQL Server database

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.