2015-09-05 116 views
1

我想我的PHP网页与我的MS SQL数据库的连接。我从互联网上得到了这些代码,但已经尝试了其他代码。所有似乎都回来了与“mssql_connect”的问题。PHP连接MS SQL

我已经试过(我认为)的一切并不能找出为什么它不会工作。

我的代码是:

<?php 
$myServer = 'SQL5008.Smarterasp.net,1433'; 
$myUser = '*****'; 
$myPass = '*****'; 
$myDB = '*****'; 

//connection to the database 
$dbhandle = mssql_connect($myServer, $myuser, $myPass) 
or die("Couldn't connect to SQL Server on $myServer"); 

//select a database to work with 
$selected = mssql_select_db($myDB, $dbhandle) 
or die("Couldn't open database $myDB"); 

//declare the SQL statement that will query the database 
$query = "SELECT id "; 
$query .= "FROM tblEmployees "; 
$query .= "WHERE CompanyID=3"; 

//execute the SQL query and return records 
$result = mssql_query($query); 

$numRows = mssql_num_rows($result); 
echo "<h1>" . $numRows . " Row" . ($numRows == 1 ? "" : "s") . " Returned </h1>"; 

//display the results 
while($row = mssql_fetch_array($result)) 
{ 
echo "<li>" . $row["id"] . $row["name"] . $row["year"] . "</li>"; 
} 
//close the connection 
mssql_close($dbhandle); 
?> 
+0

尝试删除单引号$数据库句柄= mssql_connect($ myServer上,$为myuser,$为mypass) –

+0

对不起,我曾试图把连接字符串中的文本。我将编辑我的代码并将其删除。仍然没有运气。 –

回答

0

你为什么不尝试使用PDO。我每天都使用它与SQL SERVER。你将需要php sqlsrv扩展。

// instantiate the pdo object 
 
try { 
 
    $Server = "localhost"; 
 
    $User = "username"; 
 
    $Pass = "password"; 
 
    $Database = "mydb"; 
 
    
 
    $this->conn = new PDO("sqlsrv:Server=$Server;Database=$Database", $User, $Pass); 
 
    $this->conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);//allow for SQL query errors 
 
    } 
 
catch (PDOException $e) { 
 
    print "Error!: " . $e->getMessage() . "<br/>"; 
 
    die(); 
 
    }

+0

我使用一个PHP网页,我的数据库在线托管。我怎样才能获得延期? –

0

如果MSSQL扩展加载使用phpinfo()检查。根据PHP手册:

此扩展在Windows 5.3及更高版本的PHP上不可用。

如果您发现mssql已卸载,请尝试使用sqlsrv扩展名进行连接。在这里你可以找到一些例子http://php.net/manual/ru/function.sqlsrv-connect.php

反正它是在这里发表您从PHP得到一个错误信息是个好主意。