Connection to DB in PHP

11/07/2011 18:28 EU-UNIT#1
Hallo zusammen,
ich habe seit wochen langem ausprobieren der verschiedensten host adressen , passwort änderungen und tüfteleien am script selbst gedacht, das ihr mir hoffentlich helfen könnt.

Allgemeines:
Xampp 3.5 (unterstützt mssql)
Script soll eine Statusanzeige der Datenbank auf der Homepage liefern.
Datenbank-files liegen in C:

Ich habe folgenden Code:
PHP Code:
<?php
$host 
"P-SERVER-PC\SQLEXPRESS";
$user ="sa";
$password="[Beispiel_4_E-PvP]";
$db "Auth";

$connect mssql_connect($host,$user,$password)
or die(
"Can't connect to the datebase.");
    
$select mssql_select_db($db,$connect)
or die(
"Can't select the datebase");

if(!
$select)
{
    echo 
"<p>Auth DB: <font color=red>Offline</font>";
}

else
{
    echo 
"<p>Auth DB: <font color=green>Online</font></p>";
}
?>
Wenn ich jetzt auf meine seite gehe und in das feld für die Statusanzeige gehe, wird angezeigt das keine verbindung zu der Datebank aufgebaut werden konnte.

Ich hoffe jemand kann mir helfen..

Liebe Grüße
EU-UNIT
11/07/2011 19:54 Rangada#2
Wenns angenehm werden soll (PDO-erweiterung):
[Only registered and activated users can see links. Click Here To Register...]


PHP Code:
  <?php   
$serverName 
"XPS-15\SQLRAPPELZ";

try
{
    
$conn = new PDO"sqlsrv:Server=$serverName;Database=auth""sa""");
    
$conn->setAttributePDO::ATTR_ERRMODEPDO::ERRMODE_EXCEPTION );
}
catch(
Exception $e)
{
    die( 
print_r$e->getMessage() ) );
}
    
$tsql "SELECT account_id, login_name, password
             FROM dbo.Accounts"
;
    
$getAccounts $conn->prepare($tsql);
    
$getAccounts->execute();    
    
$accounts $getAccounts->fetchAll(PDO::FETCH_ASSOC); 
    echo 
'<pre>';
    
var_dump($accounts);
Result: (gekürzt)
Code:
array(3) {
  [0]=>
  array(3) {
    ["account_id"]=>
    string(1) "1"
    ["login_name"]=>
    string(4) "test"
    ["password"]=>
    string(32) "bdc4c7433b957b149f36977af8ad5471"
  }
}
Wenn du prozedual arbeiten willst, würd ich dir zu sqlsrv raten (basierd beides auf dem gleichen Treiber, nur prozeduales interface):
[Only registered and activated users can see links. Click Here To Register...]

Wenn du Hilfe beim installieren benötigst poste einfach, ist recht simpel (1-2 Zeilen in php.ini 2 Dateien einfügen)
11/07/2011 20:30 EU-UNIT#3
Hey,
danke schonmal für deinen post, wird mri denk ich weiterhelfen :)

Allerdings wollte ich mal fragen ob das von mir oben richtig war, da ich ja keine verbindung herstellen konnte...
11/07/2011 20:34 Rangada#4
Quote:
Originally Posted by EU-UNIT View Post

Allerdings wollte ich mal fragen ob das von mir oben richtig war, da ich ja keine verbindung herstellen konnte...
Wenn du eine halbwegs aktuelle PHP-Version benutzt nicht:

[Only registered and activated users can see links. Click Here To Register...]
Quote:
Diese Erweiterung steht unter Windows ab PHP 5.3 nicht mehr zur Verfügung.

Microsoft stellt SQLSRV, einen alternativen Treiber für MS SQL, zur Verfügung: » [Only registered and activated users can see links. Click Here To Register...].
Wenn du noch unter 5.2 oder unter Linux arbeitest, kann ich dir nicht weiterhelfen, hab atm nur 5.3.8 und 5.4b2 installiert)
11/07/2011 20:42 EU-UNIT#5
Habe PhP version 5.1.4 laufen... da soltle es doch funktionieren oder nicht ?

EDIT: So ich denke ich werde es so machen, ich lerne C# und xml and then i can asp.net und asp.net ist ja das gegenteil von php von microsoft. Da dann alles MS sit sollte ich ja alles hinbekommen