MSSQL Server

Hallo,

danke für den Tip, bekomme aber immer wieder die folgende Fehlermeldung:


Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server:.....

Bei meinem MSSQL-Server ist die SQL-Server Authentifizierung aktiviert und mit dem Server Management kann ich mich auch mit der obengenannten Variante anmelden.

Gibt es beim Server noch etwas zu beachten?

Bin beim MSSQL/PHP absoluter Newbie, arbeite Beruflich sonst mit einer Oracle DB in Verbindung JDBC/JSP.

Vielen Dank schon einmal für weiter Tips, dieses tolle Forum und an alle die helfen !

HI

ohne dir zu nahe tretten zu wollen?
Servername, User und Passwort wurde richtig geschrieben?

Was sagt das MsSql Server Log, weist dieser die Verbindung ab oder gibt eine andere Meldung aus?
Manchmal ist der MsSql Server auch so eingestellt das er nun Pipe Verbindungen aktzeptiert.

Grüsse Patrik

Hallo,

kein Problem, Ich bin für jeden Tip/Hinweis dankbar. User/Pass habe ich mehrfach kontrolliert und auch mit dem sa-User getestet. Servername habe ich auch mit Name/IP/localhost getestet sogar mit „Servername/SQLEXPREESS“. Alles ohne Erfolg.

Server Log habe ich noch nicht nachgeschaut, muss ich heute nachmittag mal suchen (wo?).

Server ist so eingestellt, dass er Pipes und TCP/IP akzeptiert.

Viele Grüße, Marc !

Heißt Dein Rechner wirklich localhost ?

hi

localhost entspricht der localen IP-Adresse.
127.0.0.1

Gruss Patrik

Damit bin ich mal auf die Nase gefallen, irgendwie mochte mein Rechner localhost nicht … ist aber schon was her.

Hallo,

habe jetzt nochmals User/Pass durchgesehen und alle möglichen Kobinationen (localhost, 127.0.0.1, usw.) probiert.
Weiterhin ohne Erfolg.

Ich habe leider auch noch kein entsprechendes Log-File gefunden wo ich schauen kann.

In der DB habe ich die Berechtigungen angeschaut, der entsprechednde Benutzer hat z.B. die Berechtigung für den connect.

Gruß Marc !

Hallo,

hast Du einen SQL2000 / MSDN oder SQL2005/Express ???

Wenn Du einen SQL2005 hast, dann wird er glaube ich zu mindest
nicht oder noch nicht von PHP nativ unterstützt, dann musst Du über
ODBC gehen.

Jürgen

Hallo Jürgen,

benutze SQL2005 Express. Gibt es da noch irgendwelche Einstellungen zu beachten (außer die obengenannten wie SQL Authentifizierung, TCP/IP und Name Pipes…)

Gruß Marc!

Schau mal Hier

oder Hier

Vielleicht hilft dir das weiter

Jürgen

Hallo Jürgen,

danke für die Links, nach dem ersten hatte ich es auch gemacht, klappt aber noch nicht.

Parallel habe ich zum Testen auf meinem IPS-Server mittels VMware Server xampp installiert und mit einer MySql Db getestet. Hier bekomme ich schon mal, nach anlegen eines Users für den Webserver auf dem IPS läuft, den connect hin und kann auch Daten aus einer Tabelle auslesen. :smiley:

Werde jetzt wohl zunächst den Weg gehen um zu einem Erfolgserlebnis zu kommen.

Nochmals vielen Dank, vielleicht teste ich ja noch mal mit dem MS-SQL den ich für meinen TV-Server vom Mediaportal brauche.

Gruß Marc !

Hallo,
folgende Punkte zum SQLexpress :

  1. Musste die Änderung im PHP.ini ändern (wie gehabt)
  2. Musste die die komplette Adresse : 192.168.0.2\sqlexpress angeben
  3. Habe die Einstellung mssql.secure_connection=on verwendet
  4. Habe ntwdblib.dll heruntergeladen und beim IP Syncom ersetzt (Version 8.00 ist zwingend erforderlich)
  5. Habe mich dann ohne Passwort und Username eingeloggt.

Vielleicht gehts damit

(Auch Jürgen)

woher habt ihr die ntwdblib.dll in version 8? ich habe einen mssql 2005 auf dem server, auf dem rechner habe ich diese datei aber nicht gefunden, habe auch mal das aktuelle php runtergeladen, die version darin ist auch älter (2.0.8.x).

auch recherchen im web ergaben nur, das ich diese datei benötige, aber keinen hinweis darauf, woher ich diese bekomme.

könnt ihr mir verraten wo ich die datei herbekomme?

danke für eure unterstützung … :).

Hallo Peter,

das sollte schon die korrekte Version der DLL sein. Genauer gesagt heißt diese: ntwdblib.dll (2000.80.194.0).

Hilfreich war dieser Link. :smiley:

könnt ihr mir verraten wo ich die datei herbekomme?

Hier hilft einer der größten Suchmaschinenbetreiber :wink:

Hallo, ich habe das problem das ich nicht Connecten kann MSSQL 2005.
Es kommt immer die Fehlermeldung das er den Befehl nicht kennt.Denke das es an einer falschen dll liegt.
Dann habe ich immer die Fehlermeldung beim Start von Ipsymcon, kann die php_pdo.dll nicht finden. eine Neuinstallation sollte den Fehler beheben.Was es natürlich nicht macht.

Die genauen Fehlermeldungen kann ich erst heute abend ins Forum stellen.
Vielleicht hat ja irgend einer eine Idee was ich falsch mache.

Ich habe es so gemacht wie hier beschrieben.

02.07, 22:45
watzl
Junior Member Registriert seit: Oct 2005
Beiträge: 1

hab’s geschafft


Hallo,
folgende Punkte zum SQLexpress :

  1. Musste die Änderung im PHP.ini ändern (wie gehabt)
  2. Musste die die komplette Adresse : 192.168.0.2\sqlexpress angeben
  3. Habe die Einstellung mssql.secure_connection=on verwendet
  4. Habe ntwdblib.dll heruntergeladen und beim IP Syncom ersetzt (Version 8.00 ist zwingend erforderlich)
  5. Habe mich dann ohne Passwort und Username eingeloggt.

Vielleicht gehts damit

(Auch Jürgen)

Ok, es funktioniert jetzt, es war die falsche dll.

Ich Versuche nun schon seit ein paar Wochen eine SQLexpress 2005 Datenbank in meine Haussteuerung zu integrieren. Allerding sind meine Programierkentnisse sehr eingeschränkt was mich aber nicht davon abhalten wird zu lehrnen.

Nach eindringlichem Stöbern in diesem Forum bin ich nun schon einmal zu folgenden Erkenntniss gekommen:

  1. Ich muss die php.ini ergenzen

    Das Problem an der Sache ist in meinem IP Symcon hauptverzeichniss gibt es
    keine PHP.ini was bedeutet es fällt mir schwer diese zu ergenzen
    Die Frage dazu Lautet kann ich diese einfach erstellen? Oder muss ich die
    irgenwo suchen.

  2. Ich benötige eine DLL die in IP-Symkon eingefügt werden muss
    Dies ist die ntwblib.dll in der Version 8 allerdings konnte ich diese nicht im
    Netz finden. Wäre traumhaft wen jemand einen Link für mich hätte.

Der SQLexpress Server läuft bereits erfolgreich auf dem system und ich kann über ein Management tool auch schon Daten einlesen und den Server Konfigurieren.

Ich würde mich sehr freuen wenn jemand ein wenig Hilfestellung geben könnte
Danke schonmal im Vorraus :slight_smile:

Gruß J. Kirchgäßner

Hallo Jürgen,
habe es gerade gestern abend nach 2 Stunden geschafft. Könnte Dir morgen mal dabei helfen.(Bin heute sportlich unterwegs):smiley:

Schau mal hier nach, da kannste Dir mal die php.ini kopieren.

Hier in der ZIP ist alles was ihr braucht für eine MS SQL 2005 Integration in IPS (1&2):

  • PHP.INI
  • DEMO DB (bitte über SQL2005 Management Studio 2005 importieren)
  • beispiel.php (Speichert werte in die SQL DB)
  • die DLL’s für IPS

Anleitung:

  1. Installieren von SQL 2005 Express Server (Downloaddetails: Microsoft SQL Server 2005 Express Edition).
  2. SQL 2005 Management Studio installieren (Downloaddetails: Microsoft SQL Server Management Studio Express).
  3. Service Pack 2 installieren (Downloaddetails: SQL Server 2005 SP2).
  4. ZIP Datei entpacken, DLLs und PHP.INI ins IPSymcon Verzeichnis kopieren
  5. IPSymcon neustarten (das der IPS Webserver installiert ist, wird vorausgesetzt).
  6. Beispiel Script ins IPSymcon einfügen (z.B. ein Script erstellen und den Inhalt der Datei ersetzen durch den bestehenden Inhalt des IPS Scriptgerüsts), dann das Script ausführen.
  7. In der Demo Datenbank sollte der neue Eintrag vorhanden sein.

MSSQL.zip (448 KB)

Hallo pleibing

Danke erstmal für die schnelle Hilfe

Ich bin deiner Installationsanweisung gefolgt und habe die DLLs und die PHP.ini in das IPS Verzeichniss kopiert. Auch das update für die Datenbank ist installiert. Allerdings bekomme ich beim ausführen deines Testscriptes die Fehlermeldung

Fatal error: Call to undefined function mssql_connect() in [Datenbank test] on line 9

Ich könnte mir 2 Fehlerquellen vorstellen
1 hast du geschrieben das der Webserver vorausgesetzt wird ich kann dir nicht sagen ob der da ist da ich nicht weis wie ich das erkennen kann. Ich verwende die aktuelle version von IPS also die 2.0 falls das bei der sache eine Rolle spielt

  1. könnte es sein das IPS nicht kapiert das die beiden DLLs nunangemeldet sein sollen.
    Ich habe sie direkt ins Hauptverzeichniss d:\IP-Symcon\ kopiert und auch in der php.ini das c:\ durch ein d:\ ersetzt

Gruß Jürgen