The implementation method of PHP connection SQLServer2005 (with Ntwdblib.dll download) _php tips

Source: Internet
Author: User
Tags install php mssql

The PHP connection sql2005 The problem, now integrates, simultaneously integrates the FAQ.

The tutorial I wrote earlier:

Configure the system before connecting:

1. Check file Php5.2.5/ntwdblib.dll There is a default below, can not be connected to replace.

Download the correct version of Ntwdblib.dll (2000.80.194.0), Address: http://www.jb51.net/dll/ntwdblib.dll.html

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 Php_mssql.dll to php.in extension_dir specified directory or system system32 directory. (Php_mssql.dll is available in PHP's compressed installation package).

You will need to restart Apache after completing these steps.

Note: In practice, if you manually install PHP to IIS by using PHP compressed files, you must restart the machine instead of just IIS.

3. Configure SQL Server
A. Run SQL Server Configuration Manager: SQL Server Configuration Manager, open protocol protocols
B. Allow Named pipes "Named Pipes" and "TCP/IP"
C. Right-click on "TCP/IP" to open the Property Properties tab "IPs addresses"
D. Filling 1433 with TCP dynamic port "TCP Dynamics Ports"
E. Restart SQL Server

----------------------------------------------------------------------------------------------- 
4. Connect MS SQL Server with the following methods:
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 + +) &NBSP;
   {&NBSP;
Span class= "Apple-converted-space" >  $Row =mssql_fetch_array ($AdminResult); &NBSP;
 echo ($Row [1]);  
 echo ("
");  
  }  &NBSP;
?>

Input http://127.0.0.1

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

5.FAQ FAQ:

1 Error:

Fatal Error: Call to undefined function mssql_connect ()

Solve:

Using the Mssql_ series function
To use both of these needs to be set in php.ini:
(1) Allow DCOM, need to be php.ini in the com.allow_dcom=true before the semicolon ";" Remove.
(2) The use of MSSQL extension, need to php.ini in the Extension=php_mssql.dll before the semicolon ";" Remove. Key
(3) Confirm that the Extension_dir is the correct path and take this machine as an example: Extension_dir = "C:/appserv5.2.6/php/ext".
(4) If the machine still complains that it cannot find c:/appserv5.2.6/php/ext/php_mssql.dll but there is clearly this file.
Workaround: Php_mssql.dll,ntwdblib.dll Copy to the system directory/system32 restart the test.
(Note: The above two DLL files are not in the same directory, my C:/appserv5.2.6/php/ext/php_mssql.dll;c:/appserv5.2.6/php/ntwdblib.dll)
In addition, remember to restart the server after setting.

2.mssql_connect () Unable to connect to server

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

Right-view properties at the same time:

Enabled whether the selection is

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

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

The following are the corresponding relationships:

2.ntwdblib.dll version for the 2000.2.8.0 is the corresponding SqlServer2000 (this is the network search information and speculation, not loaded)

2.ntwdblib.dll version for the 2000.80.194.0 is the corresponding SqlServer2005 (this is the experiment proved to be used, I was using a notebook installed in the)

The 3.ntwdblib.dll version for 2000.80.2039 is corresponding to the SqlServer2008 (this is guessing not fitted 2008)

6. Other issues:

If PHP Apache SQL Server2000 are all on the same machine, access is basically fine.

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

If you still cannot access it, you need to verify that the machine on which PHP is located has Damin MDAC. or simply install the SQL Server client. OK.

Solve the problem as follows:

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

Php_mssql.dll If this doesn't replicate to C:/windows/system32, it's easy to show up.

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

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.