I have been trying to install SQL Server drivers for my wamp server 32 bit ( php ver 5.3.13 ) and I downloaded the drivers from Microsoft download site I copied them to ext folder and changed the php.ini file but I'm still getting errors. Could you please give me a full installation manual I really need to sort this out and start developing some codes on this.
Could you not use PDO this would solve your issues? http://www.php.net/manual/en/ref.pdo-dblib.php
EDIT:
Download SQL driver for PHP - http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx and http://www.microsoft.com/en-us/download/details.aspx?id=20098
Related
I have a PHP application that is already hosted on Windows IIS Server.But when i try to run it now then it shows me the error."db driver not found".BUT i have installed Microsoft Drivers 5.6 for PHP for SQL Server .But still getting error.I'm using SQL Server Express 14.0.1000.169 version.
Is this a correct driver version to download ? or what is the error?.
firstly, are you sure you chose the correct dll for your computer to be the php extension? version, thread safety, system architecture. All of these matter. If that is correct then you can move on to the next step which are drivers.
I am trying to get PHP with the SQL Server driver working under IIS. I had a similar situation 18 months ago with lesser versions of the php and the driver and Apache, and that code worked fine working on Windows Server 2003.
I am trying to set it up on my Windows 7 (Home Premium) Virtual Machine to work out how to do it, before attempting to get the same done on a Windows Server 2011.
Now I am coming to try the same code again and reset up my development environment. This time I am using PHP 5.5 and have installed the threadsafe version version of the driver php_pdo_sqlsrv_55_ts.dll obtained from the downloadable SQLSERVER31.exe file.
Doing all of this in 32 bit mode
As soon as I try and construct a new PDO I get the following error message
SQLSTATE[IMSSP]: This extension requires the ODBC Driver 11 for SQL
Server to communicate with SQL Server. Access the following URL to
download the ODBC Driver 11 for SQL Server for x86:
http://go.microsoft.com/fwlink/?LinkId=163712
So although that link isn't directly to the driver, I eventually find my way there and download it, only for it to fail to install. However, I think that might be because I already have the ODBC Driver 11 for SQL Server installed.
So according to my Data Sources (ODBC) application in the Administrative Tools Section there are two SQL Server ODBC drivers
SQL Server, verion 6.01.7602.17514 SQLSRV32.DLL Dated 21/11/2010
SQL Server Native Client 11, version 2011.110.5058.00 SQLNCLI11.DLL Dated 15/05/2014
So I really don't know how to go from here.
Can I remove a driver and re-install it. If so how?
Any other suggestions as to how to get this to work.
I discovered the answer to my problem. I hadn't installed the odbc driver - the drivers listed above are not the correct ones.
The reason the ODBC driver I downloaded failed to install wasn't because the driver was already installed - it was because I had downloaded the 32 bit version, and it HAS to be the 64 bit version.
As soon as I installed the 64 bit version, another entry appeared in the Data Sources Driver list, and my test program started to work
I'm using WAMP 2.2 (PHP 5.4.3) on Windows 7 64bit and I like to use PHP to connect to MS SQL Server 2005 Express Edition.
I downloaded Microsoft Drivers 3.0 for PHP for SQL Server and unzip the file php_pdo_sqlsrv_54_ts.dll to the php's extension directory.
I appended php.ini with additional "extension=php_pdo_sqlsrv_54_ts.dll".
After restarting WAMP, I got an error message dialog.
How to fix it?
One more thing, why php keep putting pdo_mssql on it's php.ini, is it available anyway?
Thanks.
You use 64-bit while the DLL library you try to use is 32-bit. Read somewhere that WAMP, XAMPP and so on doesn't like that. Try to find a 64-bit version of that DLL.
I have successfully configured php in IIS. sample php pages working fine. now i want to connect it to sql server i tried it by downloading a mssql .dll file in ext folder,I also tried by installing a extension for windows driver, then also it is not working. please help to sort out this issue. I am Using php5.3.19 for the same.
In order to use PHP 5.3 with SQL Server (2005 and above), you will need the Microsoft Drivers for PHP for SQL Server. There are two versions available: 2.0 and 3.0. 3.0 includes support for SQL Server 2012 and PHP 5.4.
You can find instructions for installing the dlls and interfacing with SQL Server in a TechNet article.
To install the extensions, you must move them into your ext folder and add a line to php.ini to load them, like the following:
extension=php_sqlsrv_53_nts_vc9.dll
Once this is done, restart the web server and load phpinfo in order to see if the extension has loaded. If it has loaded correctly, you should see a "sqlsrv" section in PHPInfo.
When the time comes for you to begin writing PHP that connects to SQL Server, make sure you have installed the native client. The current version is the SQL Server 2012 Native Client. References for the API are available on TechNet and PHP.net.
Finally, consider upgrading to PHP 5.4. The 3.0 versions of the drivers support 5.4 but the 2.0 versions do not; if you cannot install 3.0 on your system, you can find a 5.4-compatible version of the DLL (sqlsrv-5.4-nts-snap.zip or
sqlsrv-5.4-ts-snap.zip) on PHP.net. I have had good results with these versions.
I've been struggling with this for a while now and I don't know what I'm missing. The error is:
call to undefined function mssql_connect()
Having looked into it already, I've done about everything I can.
I moved the php.ini file to c:\windows
In the ini I changed the extension_dir directive to c:PHP\ext and uncommented:
extension = php_mssql.dll
I moved the dll file to c:windows\system32\
I downloaded the 200.80.194.0 version of ntwdblib.dll and placed it in c:\windows\system32
I restarted my web server client
PHP is still not recognizing the function and library classes. I'm stumped as to what I didn't do right and would love some help. If it's helpful, I'm running PHP 5.3.2, IIS, and Microsoft SQL Server 2008.
For SQL Server 2008 on Windows it's sqlsrv_connect This is because Microsoft now uses the SQL Driver for PHP which is now on version 2.0 I believe.
Also it's worth noting that with sqlsrv_query, and mssql_query they switched the parameters around (spent half an hour figuring that out).
You say you are running PHP 5.3.2. The PHP manual states:
This extension is not available anymore on Windows with PHP 5.3 or later.
The PHP MSSQL library is ancient and is no longer considered a viable option.
You should instead examine PDO with either the MSSQL driver or the more reliable ODBC driver.
Microsoft are still developing their own PDO driver. Version 2 was made available June 2010. Microsoft recommend the more stable version 1.1 for production use.