2016-10-05 10 views
0

После запуска моего PHP программу я получаю ошибку следующим образом:PHP Error: Array ([0] => IMSSP [SQLSTATE] => IMSSP [1]

Array ([0] => Array ([0] => IMSSP [SQLSTATE] => IMSSP [1] => -49 [code] => -49 [2] => This extension requires the Microsoft ODBC Driver 11 for SQL Server. Access the following URL to download the ODBC Driver 11 for SQL Server for x86: http://go.microsoft.com/fwlink/?LinkId=163712 [message] => This extension requires the Microsoft ODBC Driver 11 for SQL Server. Access the following URL to download the ODBC Driver 11 for SQL Server for x86: http://go.microsoft.com/fwlink/?LinkId=163712 ) [1] => Array ([0] => IM002 [SQLSTATE] => IM002 [1] => 0 [code] => 0 [2] => [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified [message] => [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified))

Я установил все расширения и включен .. в PHP, но я все еще получаю эту ошибку

<?php 


$serverName ="tcp:myserver.database.windows.net,1433"; 
$usr="username"; 
$pwd="password"; 
$db="SensorDataBase"; 

$connectionInfo = array("UID" => $usr, "PWD" => $pwd, "Database" => $db); 

$conn = sqlsrv_connect($serverName, $connectionInfo); 
if($conn) 
{ 
    echo "Connected"; 
} 
else 
{ 
    echo "Error As follows: "; 
    die(print_r(sqlsrv_errors(), true)); 
} 

$sql = "CREATE TABLE fyi_links (" 
    . " id INT NOT NULL VARCHAR (6)" 
    . ", url VARCHAR(80) NOT NULL" 
    . ", notes VARCHAR(1024)" 
    . ", counts INT" 
    . ", time DATETIME" 
    . ")"; 
$res = sqlsrv_query($conn, $sql); 
//$res = sqlsrv_query($sql,$conn); 
if (!$res) { 
    print('Table creation failed with error:\n'); 
    print(" ".sqlsrv_get_last_message()."\n"); 
} 
else { 
    print("Table fyi_links created.\n"); 
} 

mssql_close($conn); 

?> 
+0

Глупый вопрос, но вы установили ** Microsoft ODBC Driver 11 ** Если нет [его здесь на сайте microsoft] (https://www.microsoft.com/en-gb/download/details.aspx?id=36434) – RiggsFolly

+0

Thankyou. Хотя я получил доступ к «116.73.45.2» в MS Azure, я получаю эту ошибку: клиенту с IP-адресом «116.73.45.2» не разрешен доступ к серверу. Чтобы разрешить доступ, используйте портал управления Windows Azure или запустите sp_set_firewall_rule в основной базе данных, чтобы создать правило брандмауэра для этого IP-адреса или диапазона адресов. –

+0

Это звучит как кандидат на новый вопрос, с его различными тегами – RiggsFolly

ответ

-1

для решения этой проблемы я сделал следующее, я пошел в этой ссылке: https://microsoft.com/en-gb/download/details.aspx?id=3643, выберите систему, если это x86 или x64, установить и протестировать Это решило мою проблему.

+0

Ссылка [https://www.microsoft.com/ru-ru/download/details.aspx?id=3643] Добавьте ссылку «https: //» перед ссылкой. – Lurico

+0

Обе ссылки (ваш оригинал и один в комментарии) приводят к ошибке 404. – Rob

+1

Я был бы полезен, чтобы объяснить, что ссылка подразумевает делать - например. загрузить определенный драйвер MSSQL или драйвер ODBC – RichGoldMD