php mssql extension on wamp

20,234

Assuming you've tried to get the driver/extension installed from here: http://www.microsoft.com/en-gb/download/details.aspx?id=20098 and you've changed your php.ini in your *AMP stack's PHP folder..; and put the mssql extension in the php/ext folder...

after several hours of looking, this guide successfully got me connected to a MS SQL database. http://webcheatsheet.com/php/connect_mssql_database.php

edit: furthermore my connection class takes DB Uname PW and serverIP as constructor parameters, and the constructor calls function setCon(), so when the object is created the connection is too. then I can call queries on the connection object it in an OOP style

    function setCon(){
    $conn = mssql_connect($this->server, $this->UName, $this->pw);
    if ($conn){
        echo "Connection established @ $this->server.$this->DB (Connected to MS SQL DB)\n";
    }
    else{
        echo "Connection could not be established.";
        die( print_r( sqlsrv_errors(), true));
    }

and then later this is needed to access the connection created

function getCon(){
    return mssql_connect($this->server, $this->UName, $this->pw);
}
Share:
20,234
Pedro Araujo Jorge
Author by

Pedro Araujo Jorge

Updated on February 02, 2020

Comments

  • Pedro Araujo Jorge
    Pedro Araujo Jorge over 4 years

    I'm trying to get wamp php to communicate with an MsSQL DB but I can't seem to make it work. The current error message I get on the browser (Chrome) is:

    Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server: (...) Couldn't connect to SQL Server
    
    1. ntwdblib.dll is the correct version (2000.80.194.0)

    2. I can't use php_sqlsrv (the deployment server is linux only, sqlsrv is windows only), although from using sqlsrv I can conclude that the access info is correct (server, user, password)

    3. I've downgraded back to wampserver 2.1e & php 5.3.1 (some people got it working like this)

    4. there are no errors on the apache_error.log when I restart the wamp server

    5. installing freetds on my machine hangs apache

    6. remote machine successfully uses php_mssql.dll (linux server)

    The code I'm using:

    <?php
    $dbhandle = mssql_connect($ip,$user,$pass) or die("Couldn't connect to SQL Server on $ip"); 
    $selected = mssql_select_db($dbname,$dbhandle) or die("Couldn't open database at SQL server: $ip");
    ?>
    

    I am now going to try a linux virtual machine, but surely even if that works it will be a pain (slow and feature-less).

    My system: Windows 7, Wampserver 2.1e, PHP 5.3.1

    What else can I try? :(

  • Pedro Araujo Jorge
    Pedro Araujo Jorge about 11 years
    Thanks for your reply. I installed the php_mssql extension and there are no errors reported by apache. I also know there are no connectivity issues because if I use the sqlsrv extension (with the same settings) everything works fine.
  • Pedro Araujo Jorge
    Pedro Araujo Jorge about 11 years
    I know, but I need to work with an mssql db in this case, not mysql. The database is remote, it's not on my machine.