Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

MS SQL 2000 Server mit PHP ansprechen?

Empfohlene Antworten

Veröffentlicht

Wie spreche ich mit dem PHP Skript diese Tabelle an?

(MS SQL 2000 Server)

SQL Server-Gruppe

(local)->(Windows NT)->Datenbanken->master->Tabellen->ind_ven

<?PHP

//Datenbankserver
$db_serv = 'localhost';

//Datenbank Name
$db_name = 'ind_ven';

// User
$db_user = 'user';

// Passwort
$db_pass = 'pass';


// Verbindung zum MySQL Server herstellen
$db = mysql_connect($db_serv, $db_user, $db_pass) or die('ERROR!');

// MySQL Datenbank wählen
mysql_select_db($db_name, $db) or die('ERROR!');

?>[/PHP]

Danke,

MfG

AllThatsLeft

nimm mssql_*() statt mysql_*():

<?PHP 

//Datenbankserver
$db_serv = 'localhost';

//Datenbank Name
$db_name = 'ind_ven';

// User
$db_user = 'user';

// Passwort
$db_pass = 'pass';


// Verbindung zum MySQL Server herstellen
$db = mssql_connect($db_serv, $db_user, $db_pass) or die('ERROR!');

// MySQL Datenbank wählen
mssql_select_db($db_name, $db) or die('ERROR!');

?> [/PHP]

das war nicht alles, glaube ich ...

Problem:

Es passiert garnichts, der SQL Server 2000 ist Authentifizierungs-mäßig auf mixed Mode gestellt, dh es kann auch eine SQL Anmeldung erfolgen. Mit Accsess zb geht das auch, aber bei PHP stimmt da irgendwas nicht. Wie muss man denn den Server angeben? Localhost geht nicht. Bitte helft mir mal...

Habt ihr alle Urlaub? :P

Äh. Wenn die Verbindung zum Server nicht klappt, sollte da nicht beim gegebenem Code nen "ERROR!" kommen?

Kommt das denn? Kannst ja mal folgendes ausprobieren


<?
$db = @mssql_connect($db_serv, $db_user, $db_pass);
if($db) {
mssql_select_db($db_name, $db);
echo "Jo, Klappt";
} else {
die("<B>Klappt halt ma nich...");
} /* end if */
?>
[/php]

Kommt da denn was?

Wenn dein MSSQL Server an nem anderem Port läuft, musst du den bei der Adresse zupacken. Z.B.:

[php] $db_serv = "host:port";

Ansonsten wüsst ich nicht, was du da noch so großartig angeben könntest. Localhost natürlich nur, wenn der Webserver auf der gleichen Kiste is wie der MS-SQL ;)

ne, bekomme keinen Error ... dein Weg geht auch nicht ... ich bekomme nur ne leere Seite? Häh? Das ist echt mal unlogisch!

PS: Andere PHP Ausgaben usw laufen auf dem Webserver. Mit dem gleichen Skript kann ich mich auch an einer MySQL DB, die neben dem SQL 2000 läuft, einloggen.

:confused:

Änder mal in der PHP-Ini, daß er alle Fehler ausgibt. Und mach beim Code von varg auf jeden Fall das @ vor dem Befehl weg, das unterdrückt nämlich Fehlerausgaben. Und dann schau mal, ob du vielleicht in irgendner Log-Datei vom SQL-2000-Server wenigstens deine Anmeldeversuche wiederfindest, vielleicht steht da ja auch ein Grund für den Fehlschlag. Und du kannst ja anstelle von "localhost" mal die IP des Rechners angeben. Und lädt er die Seite denn zu Ende? Denn wenn du beim Script von varg nicht mal die "Klappt nicht.."-Meldung siehst, dann ist entweder grundsätzlich dein PHP-Server etwas komisch (funzt net) oder das Script hängt sich beim connect auf.

ahhhh,

nach 50mal F5 (aktualisieren)

bekomme ich:

PHP has encountered an Access Violation at 01820AFD

:confused:

ah ok, jetzt bekomme ich andauernd die ERROR Meldung, dh der Verbindungsversuch schlug fehl ... aber ich weiß nicht, was ich sonst als Datenbankserver angeben soll. localhost oder Hostname gehen nicht. :(

[...] Und mach beim Code von varg auf jeden Fall das @ vor dem Befehl weg, das unterdrückt nämlich Fehlerausgaben.[...]

Upsi :)

Wenn du die Netzwerk IP des MS-SQL Servers angibst (192.168.0.1 oder so), was passiert dann?

Also folgender Code:


<?PHP

//Datenbankserver
$db_serv = 'localhost';

//Datenbank Name
$db_name = 'ind_ven';

// User
$db_user = 'user';

// Passwort
$db_pass = 'pass';


// Verbindung zum MySQL Server herstellen
$db = mysql_connect($db_serv, $db_user, $db_pass) or die('Keine Verbindung zum SQL-Server!');

// MySQL Datenbank wählen
mysql_select_db($db_name, $db) or die('ERROR!');

?>
[/PHP]

führt bei mir zu folgender Ausgabe:

ERROR!

Dh, er kann die Datenbank nicht wählen oder was? Ist was an der Syntax oder so falsch?

Wieso versuchst du eigentlich, mit den mysql Commands von PHP auf ne mssql db zu kommen? ;) Oder war das nen Copy&Paste Fehler?


<?PHP

//Datenbankserver
$db_serv = 'localhost';

//Datenbank Name
$db_name = 'ind_ven';

// User
$db_user = 'user';

// Passwort
$db_pass = 'pass';


// Verbindung zum MySQL Server herstellen - wichtig mssql, kein mysql
$db = mssql_connect($db_serv, $db_user, $db_pass) or die('Keine Verbindung zum SQL-Server!');

// MySQL Datenbank wählen - wichtig mssql, kein mysql
mssql_select_db($db_name, $db) or die('ERROR!'); // <<< Das Error kommt?

?>
[/php]

Wenn das ERROR! kommt, und nicht das Keine Verbindung zum SQL-Server, glaub ich fast dass der Datenbankname nicht stimmt. Überprüf das mal :)

Hi Varg,

ja das war ein Copy&Paste Fehler. Mit deinem Code bekomme ich genau dein Error unten. Ich kann auch irgednwas beliebiges für ERROR! eintragen, ich bekomme immer diese letzte DIE Ausgabe.

Der Datenbankname stimmt definitiv, ich weiß nur nur ob ich dieses local/master/ usw davorhängen soll.

Thx

Moin,

es wär jedenfalls nen Versuch wert. Mir gehen nämlich die kreativen Ideen aus, woran das liegen könnt

gibt es vielleicht von der DB aus irgendwelche Restriktionen, wie du zugreifst? Kann ja sein, daß er bei Access, wo es bei dir funzt, über ODBC zugreift und der Server erlaubt es, während du den PHP-Zugriff nicht erlaubt bekommst.

Danke für die vielen Antworten und die nette Hilfe. Es geht jetzt alles...

Thx!

Ein weiteres Prob ist noch, dass ich es nicht schaffe, mich mit jemand anders zu authentifizieren als sa (Datenbankadmin von MS-SQL)

Woran lag es denn jetzt?

Kannst du dich von Access aus als jemand anderes authentifizieren?

Es lag daran, dass ich jetzt den Datenbank-Server-Admin als Benutzer (sa) und sein Kennwort als Passwort eingegeben habe. Prompt lief alles. Eigentlich hatte ich ja meiner Datenbank einen anderen Benutzer zugewiesen, allerdings kommt der nicht bis zu DB...

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.