MSSQL Support für PHP

Voraussetzung hierfür ist, dass der Support für PHP durch unsere Technik vorher für die gewünschte PHP Version installiert wurde. Eröffnen Sie dafür bitte eine autorisierte Anfrage. Wie Sie ein Ticket erstellen, erfahren Sie hier: Wie erstelle ich ein Ticket?

Abschnitt für PHP 5.6:

Um MSSQL Support für PHP zu aktivieren, müssen folgende Einträge in der phpX.Y.ini-Datei gesetzt werden.

; ODBC Extension für PHP
extension="/usr/local/php5.6/lib/php/extensions/no-debug-non-zts-20131226/odbc.so"
extension="/usr/local/php5.6/lib/php/extensions/no-debug-non-zts-20131226/pdo_odbc.so"

Der Standard $dsn sieht wie folgt aus:

$dsn = "Driver=sqlServer;Server=some.server.com;Port=1433;Database=mydatabase;";

Die Verbindung kann dann über folgendes PHP Skript getestet werden:

$user = "username";
$pass = "password";
// Some examples show "Driver={FreeTDS};" but this will not work
$dsn = "Driver=sqlServer;Server=some.server.com;Port=1433;Database=mydatabase;";
$cx = odbc_connect($dsn,$user,$pass);
// Get the error message
if($cx === false) {
    throw new ErrorExcpetion(odbc_errormsg());
}
?>

Abschnitt für PHP 7.x und PHP 8.x:

Via php.ini müssen folgende Module aktiviert werden:

; MSSQL Extensions für PHP
extension="/usr/local/php_extensions/phpX.Y/sqlsrv.so"
extension="/usr/local/php_extensions/phpX.Y/pdo_sqlsrv.so"

Die Verbindung kann dann über folgendes PHP Skript getestet werden:

<?php
$serverName "serverName\\sqlexpress, 1542"//serverName\instanceName, portNumber (default is 1433)
$connectionInfo array(
    "database" => "dbName",
    "uid" => "userName",
    "pwd" => "password"
);
$conn = sqlsrv_connect($serverName$connectionInfo);
if ($conn) {
    echo "Connection established.<br />";
else {
    echo "Connection could not be established.<br />";
    die(print_r(sqlsrv_errors(), true));
}
?>

Aktualisiert am 22. September 2022
War dieser Artikel hilfreich?

Ähnliche Artikel