DatenBank Ini Datei Login

Ensaw

Mitglied
Hallo!

Ich bräuchte Hilfe beim Login für die Datenbank. Bisher habe ich mich so in eine Datenbank eingeloggt um die Daten zu bekommen:
PHP:
$Datenliefern = new DatenBankVerbindung ( "Server", "Datenank", "Benutzer", "Passwort" ); //Login Anonymisiert

Nun möchte ich die Verbindung nichtmehr über solch unschönen Code laufen lassen, sondern seperat in einer eigenen Klasse.
Dabei dachte ich an solch einen Code:

PHP:
class DatenBankDaten implements DatenBankSchnittstelle
{
    public function gibDBDaten()
    {
        $verbindungEinstellung = parse_ini_file("PfadZurIniDatei", TRUE);
    }
}

und die Ini sieht so aus:

Code:
[DB]
Benutzer=Benutzer
Passwort=Passwort
Datenbank=Datenbank
Server=Server

Nun wird ein Multi-Array erstellt. Nur wie bekomme ich die Daten von der Klasse durch eine Schnittstelle in meine Anwendungs-Klasse mit dem unschönen Code?
 
Es sollte eigentlich gem. PHP-Doku ein einfacher Array zurückkommen.

PHP:
class DatenBankDaten{
    public $db;
    public $server
    //.. etc

    public function gibDBDaten(){
        $values = parse_ini_file("PfadZurIniDatei", TRUE);
        //Die einzelnen Angaben der Klasse als Properties übergeben
        $this->server = $values['Server'];
        $this->db = $values['Datenbank'];
        //.. etc
    }
}  

$dbInfos = new DatenBankDaten(),

mysqli_connect($dbInfos->db, // etc.
 
PHP:
class DatenBankDaten
{
    public $Datenbank;
    public $Server;
    public $Benutzer;
    public $Passwort;

    public function gibDBDaten()
    {
        $verbindungEinstellung = parse_ini_file("PfadZurIniDatei", TRUE);
        $this->Datenbank = $arraydbd['Datenbank'];
        $this->Server = $arraydbd['Server'];
        $this->Benutzer = $arraydbd['Benutzer'];
        $this->Passwort = $arraydbd['Passwort'];
    }
}
$verbindungEinstellung = new DatenBankDaten();

Ergebnis via var_dump
PHP:
object(DatenBankDaten)#1 (4) { ["Datenbank"]=> NULL ["Server"]=> NULL ["Beutzer"]=> NULL ["Passwort"]=> NULL }

Mache ich dort etwas falsch?
 
Ich möchte zumindest noch ergänzen, dass deine INI-Datei außerhalb des HTTP-Zugriffs abgelegt sein sollte. Weil man nie weiß, was über die Jahr so alles geschehen wird, würde ich daher empfehlen, auf eine Datei im INI-Format zu verzichten. PHP-Format löst sicher auch nicht alle Sicherheitsprobleme, aber wirkt auf mich nen Tacken sicherer.
 
Zurück