Heim Backend-Entwicklung PHP-Tutorial Anleitung zum Verbinden von Microsoft MSSQL (SQL-Server) mit PHP

Anleitung zum Verbinden von Microsoft MSSQL (SQL-Server) mit PHP

May 30, 2018 pm 01:48 PM
mssql php server

Als ich ezSQL studierte, sah ich mssql_connect() und andere von PHP bereitgestellte Funktionen zur Verbindung mit MSSQL. Ich dachte, dass PHP, eine Open-Source- und weltweit beliebte Programmiersprache, einfach mit den Daten von Microsoft zu verbinden sein sollte. Aber in Wirklichkeit stieß ich bei der Ausführung auf viele Schwierigkeiten

Als ich ezSQL studierte, sah ich mssql_connect() und andere von PHP bereitgestellte Funktionen, um eine Verbindung zu MSSQL herzustellen. Ich dachte, dass PHP eine Open-Source- und beliebte Programmiersprache ist in der Welt, wäre bei der Anbindung an Microsoft-Daten eine Selbstverständlichkeit, aber wenn es um die tatsächliche Implementierung geht, stellen wir fest, dass es viele Schwierigkeiten gibt.

Die PHP-Version, die ich zu Beginn heruntergeladen habe, war 5.93. Nachdem ich sie lange heruntergeladen und Umgebungsvariablen usw. hinzugefügt hatte, lief die Funktion phpinfo() endlich erfolgreich im Browser. Als ich dann auf der ganzen Welt nach php_mssql.dll suchte, entdeckte ich, dass mssql in PHP-Versionen 5.3 und höher nicht mehr nativ unterstützt wird.

Endlich habe ich Microsoft Drivers 3.0 für PHP für SQL Server gefunden. Ich dachte, dass die Software von Microsoft dazu in der Lage sein sollte, aber ich war hilflos, als ich feststellte, dass SQLSRV30.EXE nicht ausgeführt werden konnte: „SQLSRV30.EXE ist nicht verfügbar ein gültiges Win32-Programm.

Nachdem ich lange im Internet gesucht habe, habe ich die folgenden möglichen Methoden zusammengefasst, aber vorher müssen Sie:

MICROSOFT SQL SERVER konfigurieren

1, SQL Server herunterladen und installieren. Mittlerweile gibt es viele Versionen von 2000 bis 2008. Finden Sie eine und laden Sie sie selbst herunter.

2. Öffnen Sie den TCP/IP-Verbindungsmodus, um den Fernzugriff auf die Datenbank zu ermöglichen. SQL Server-Konfigurationsmanager –> Netzwerkkonfiguration –> TCP/IP aktiviert

3.

4. PHP installieren und IIS-Dienst konfigurieren.

5. Öffnen Sie die php.ini-Datei in dem Ordner, in dem sich PHP befindet, und fügen Sie Folgendes hinzu:

mssql.textlimit = 20971520
mssql.textsize = 20971520
Nach dem Login kopieren

Danach können Sie folgen Es gibt drei Methoden, um eine Verbindung zur Datenbank herzustellen:

Verwenden Sie die PHP-eigene Methode, um eine Verbindung zu MSSQL herzustellen (gilt nicht für Versionen 5.3 und höher)

Stellen Sie sicher, dass php_mssql.dll in PHP vorhanden ist ext-Erweiterungsbibliotheksordner. Entfernen Sie dann in der Konfiguration in PHP.ini das „;“ vor

;extension=php_mssql.dll

.

Sie können dann die Verbindung testen:

//连接MSSQL
$conn=mssql_connect("实例名或者服务器IP","用户名","密码");

//测试连接
if($conn)
{
 echo "连接成功";
}
Nach dem Login kopieren

Microsoft Drivers for SQL Server for PHP

Im Juli 2008 veröffentlichte Microsoft einen neuen Treiber für PHP zur Verbindung mit SQL Server. Er verbesserte einige der Mängel der PHP-eigenen MSSQL-Funktion und wurde in Form eines PHP-Erweiterungs-Plug-Ins entwickelt Einfaches Lesen und Schreiben von Microsoft-Datenbanken.

Wenn Ihr Server IIS verwendet, müssen Sie es hier herunterladen:

http://php.iis.net/

Weil über den obigen Link Tatsächlich Es handelt sich um eine von Microsoft integrierte Netzwerkentwicklungsplattform, die nur die Online-Installation ermöglicht, aber die Integration von PDO-Plug-Ins und PHP ist natürlich auch einige andere Entwicklungsfunktionen von Microsoft Sie brauchen es, Sie müssen es nicht installieren.

Aber wenn Sie Apache verwenden, können Sie dieses Plug-in hier direkt herunterladen. Es handelt sich tatsächlich um eine entpackte Datei und mehrere DLL-Dateien werden wie folgt entpackt:

1) Laden Sie das Treiberpaket herunter: http://www.microsoft.com/en-us/download/details.aspx?id=20098.

2) Extrahieren Sie die DLL-Datei in das PHP-Erweiterungsverzeichnis , wenn es heißt, dass SQLSRV30 .EXE kein gültiges Win32-Programm ist, fehlen möglicherweise einige Bibliotheken, es ist möglicherweise vc10 oder es kann nicht mit Administratorrechten ausgeführt werden.

extension_dir = „C:PHPext“

3) Verweisen Sie auf die entsprechende Dynamic Link Library-Datei in der Konfigurationsdatei php.ini

extension=php_sqlsrv_52_ts_vc6.dll
extension=php_pdo_sqlsrv_52_ts_vc6.dll
extension=php_pdo.dll

Die 52 und 53 repräsentieren die 5.2.x- und 5.3.x-Versionen von.php , Wählen Sie die Version, die zu Ihrer PHP-Version passt. Die Wahl von vc6 oder vc9 hängt hauptsächlich davon ab, welche Webserver-Software Sie verwenden. Wenn Sie IIS verwenden, wählen Sie vc6.
Was ts und nts betrifft, hängt es davon ab, ob die von Ihnen installierte PHP-Version threadsicher oder nicht threadsicher ist, ts ist threadsicher und nts ist nicht threadsicher.

4) Apache neu starten

5) Mit der Datenbank verbinden

Testen Sie den Verbindungscode:

<?php
//本地测试的服务名
"(local)";
//使用sql server身份验证,参数使用数组的形式,一次是用户名,密码,数据库名
//如果你使用的是windows身份验证,那么可以去掉用户名和密码
$connectionInfo = array( "UID"=>"root",
    "PWD"=>"root2010",
    "Database"=>"master");

$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn )
{
 echo "Connection established.\n";
}
else
{
 echo "Connection could not be established.\n";
 die( print_r( sqlsrv_errors(), true));
}
 ?>
Nach dem Login kopieren

in FreeTDS unter Windows verwenden

Was ist FreeTDS? Eigentlich ist FreeTDS eine Open-Source-(oder kostenlose) C-Programmbibliothek, die auf die SQL-Datenbank von Microsoft unter Linux-Systemen zugreifen und diese betreiben kann. Es kann in der db-lib- oder ct-lib-Bibliothek von Sybase verwendet werden, die auch eine ODBC-Bibliothek enthält. Ermöglicht vielen Anwendungen die Verbindung mit Sybase- oder Microsoft SQL-Servern. FreeTDS wird als Quellcode veröffentlicht und kann daher auf fast jedem System kompiliert und installiert werden.

Wenn Ihr Server ein Windows-System ist, dann sollten Sie php_dblib.dll verwenden. (Weitere Informationen zur Verwendung von FreeTDS für Unix.)

通常我们可以在这个网站上找到这些DLL文件- Frank Kromann's site, 但是它基本上很多都已经过时了,并且会引发很多的问题,因此我们推荐windows下使用PHP 5.2.x版本,并且看看下面的建议 :

1. 按照下面的表格来下载 php_dblib.dll 并且将其保存到 /PHP/ext 文件夹下面.





PHP versionThread SafeFreeTDS versionDownload URL
PHP 5.2.x (vc6)Yes0.82 + 20090302 patchesDownload!
No0.82 + 20090302 patchesDownload!
PHP 5.3.x (vc9)Yes0.82 + 20090904 patchesDownload!
No0.82 + 20090904 patchesDownload!
PHP 5.4.x (vc9)Yes0.82 + 20110906 patchesDownload! FTP Download!
No0.82 + 20110906 patchesDownload! FTP Download!


2、 FreeTDS 需要安装 .NET Framework v1.1 ,你可以到微软的网站去下载。或者你去Frank's site 下载需要的DLL文件,并保存到你的/PHP根目录下面。

3、在php配置文件 /PHP/php.ini 中添加:

extension=php_dblib.dll

4、当php引擎启动FreeTDS模块的时候需要传递一些信息,使得FreeTDS能够连接到它的默认的数据库。因此它的需要在freetds.conf中定义数据库连接的基本信息,该文件在其根目录下,可以按照你的情况来进行修改:

[global]
host = xxx.xxx.xxx.xxx (host name or ip of the MSSQL server)
port = 1433
client charset = UTF-8
tds version = 8.0
text size = 20971520
5、创建config.php文档来定义数据库连接参数:

$CFG->dbtype = &#39;mssql&#39;; // Required
$CFG->dbhost = &#39;localhost&#39;; // assuming MS SQL is on the same server, otherwise use an IP
$CFG->dbname = &#39;moodle&#39;;  // or whatever you called the database you created
$CFG->dbuser = &#39;yourusername&#39;; // I usually use the &#39;sa&#39; account (dbowner perms are enough)
$CFG->dbpass = &#39;yourpassword&#39;;
$CFG->dbpersist = false;
$CFG->prefix = &#39;mdl_&#39;;  //Prefix, you can change it, but NEVER leave it blank.
Nach dem Login kopieren

6、 重启你的网站,如果还是没有连接到你的数据库的话,在 /PHP/php.ini文件中将display_startup_errors改为"On",当你解决了这些问题之后再将错误报告改为“Off”;
7、测试你的网站,建立test.php文件,代码如下,访问http://localhost/test.php进行测试

<?php
	$link = mssql_connect(&#39;localhost&#39;, &#39;db_user&#39;, &#39;db_password&#39;);
	if(!$link) {
		echo&#39;Could not connect&#39;;
		die(&#39;Could not connect: &#39; . mssql_error());
	}
	echo&#39;Successful connection&#39;;
	mssql_close($link);
?>
Nach dem Login kopieren

以上就是本文的全部内容,希望对大家的学习有所帮助。


相关推荐:

php中常量、静态属性、非静态属性的区别

php中静态属性和静态方法区别

php中类和对象:静态属性、静态方法图文详解

Das obige ist der detaillierte Inhalt vonAnleitung zum Verbinden von Microsoft MSSQL (SQL-Server) mit PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

7 PHP-Funktionen, die ich leider vorher nicht kannte 7 PHP-Funktionen, die ich leider vorher nicht kannte Nov 13, 2024 am 09:42 AM

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

Wie analysiert und verarbeitet man HTML/XML in PHP? Wie analysiert und verarbeitet man HTML/XML in PHP? Feb 07, 2025 am 11:57 AM

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Apr 05, 2025 am 12:04 AM

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

PHP -Programm zum Zählen von Vokalen in einer Zeichenfolge PHP -Programm zum Zählen von Vokalen in einer Zeichenfolge Feb 07, 2025 pm 12:12 PM

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Erklären Sie die späte statische Bindung in PHP (statisch: :). Erklären Sie die späte statische Bindung in PHP (statisch: :). Apr 03, 2025 am 12:04 AM

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind PHP Magic -Methoden (__construct, __Destruct, __call, __get, __set usw.) und geben Sie Anwendungsfälle an? Was sind PHP Magic -Methoden (__construct, __Destruct, __call, __get, __set usw.) und geben Sie Anwendungsfälle an? Apr 03, 2025 am 12:03 AM

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.

See all articles