Ergebnis 1 bis 6 von 6

Thema: XAMPP // Database::getInstance()

  1. #1
    Contao-Nutzer
    Registriert seit
    29.03.2012.
    Beiträge
    60

    Standard XAMPP // Database::getInstance()

    Hallo,

    ich arbeite gerade an einem Projekt, in dem ich Daten aus einer externen Datenbank auslese. Dafür habe ich bereits ein funktionsfähiges Modul erstellt. Das Problem, die Datenbank-Verbindung läuft nur Online und nicht in meiner XAMPP Umgebung. Vielleicht kann mir jemand helfen? Kann es sein, dass ich einfach nur einen Port freigeben muss? Bin für jeden Hinweis sehr Dankbar!

    Hier die Fehlermeldung:
    Code:
    Fatal error: Uncaught exception Exception with message Could not connect to database () thrown in D:\xampp\htdocs\xyz\system\modules\core\library\Contao\Database.php on line 81
    #0 D:\xampp\htdocs\xyz\system\modules\core\library\Contao\Database.php(159): Contao\Database->__construct(Array)
    #1 D:\xampp\htdocs\xyz\system\modules\xyz\modules\Modulexyz.php(24): Contao\Database::getInstance(Array)
    #2 D:\xampp\htdocs\xyz\system\modules\core\modules\Module.php(148): Modulexyz->compile()
    #3 D:\xampp\htdocs\xyz\system\modules\core\elements\ContentModule.php(63): Contao\Module->generate()
    #4 D:\xampp\htdocs\xyz\system\modules\core\library\Contao\Controller.php(462): Contao\ContentModule->generate()
    #5 D:\xampp\htdocs\xyz\system\modules\core\modules\ModuleArticle.php(179): Contao\Controller->getContentElement(Object(Contao\ContentModel))
    #6 D:\xampp\htdocs\xyz\system\modules\core\modules\Module.php(148): Contao\ModuleArticle->compile()
    #7 D:\xampp\htdocs\xyz\system\modules\core\modules\ModuleArticle.php(59): Contao\Module->generate()
    #8 D:\xampp\htdocs\xyz\system\modules\core\library\Contao\Controller.php(390): Contao\ModuleArticle->generate(false)
    #9 D:\xampp\htdocs\xyz\system\modules\core\library\Contao\Controller.php(243): Contao\Controller->getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #10 D:\xampp\htdocs\xyz\system\modules\core\pages\PageRegular.php(109): Contao\Controller->getFrontendModule('0', 'main')
    #11 D:\xampp\htdocs\xyz\index.php(250): Contao\PageRegular->generate(Object(Contao\PageModel))
    #12 D:\xampp\htdocs\xyz\index.php(411): Index->run()
    #13 {main}
    Hier noch der Aufruf der Datenbank:
    PHP-Code:
    $objDB Database::getInstance(array( 
                
    'dbHost'     => 'xyz.de'
                
    'dbUser'     => 'xyz',
                
    'dbPass'     => 'xyz!'
                
    'dbDatabase' => 'xyz'
            
    )); 
    Wie gesagt, online funktioniert alles einwandfrei. Ich hoffe es gibt eine Lösung für mein Problem

  2. #2
    AG CMS-Garden
    Contao-Urgestein
    Avatar von lindesbs
    Registriert seit
    05.06.2009.
    Ort
    Oer-Erkenschwick
    Beiträge
    4.154
    Partner-ID
    keine
    User beschenken
    Wunschliste

    Standard

    schonmal den dbHost mit "localhost" ausprobiert ?
    von Willi Voltz aus PR 500: Henry George sagte einmal: »Kultur ist Zusammenarbeit.«


    Contao-Hosting: begeisterter Uberspace-Nutzer

  3. #3
    Contao-Nutzer
    Registriert seit
    29.03.2012.
    Beiträge
    60

    Standard

    Die Datenbank liegt auf einem anderen Server, da werde ich dann wohl mit 'localhost' keinen Erfolg haben

  4. #4
    AG CMS-Garden
    Contao-Urgestein
    Avatar von lindesbs
    Registriert seit
    05.06.2009.
    Ort
    Oer-Erkenschwick
    Beiträge
    4.154
    Partner-ID
    keine
    User beschenken
    Wunschliste

    Standard

    Ist denn auch der externe Zugriff auf die DB erlaubt und moeglich ?
    von Willi Voltz aus PR 500: Henry George sagte einmal: »Kultur ist Zusammenarbeit.«


    Contao-Hosting: begeisterter Uberspace-Nutzer

  5. #5
    Contao-Nutzer
    Registriert seit
    29.03.2012.
    Beiträge
    60

    Standard

    Der Lesezugriff ist möglich und wenn ich das Modul, so wie es erstellt ist in die Online-Version kopiere, dann werden die Daten richtig und ohne Fehler abgerufen. Deswegen bin ich eben auch etwas verwundert. Liegt es vielleicht an den Host Angaben, dass ich dort noch etwas hinzufügen muss, ähnlich wie 'http://'? Ich vermute mal, dass die Verbindung entweder von XAMPP geblockt wird oder ich beim Host etwas anderes eingeben muss, aber vielleicht liegt der Fehler an einen ganz anderen Stelle.

  6. #6
    AG CMS-Garden
    Contao-Urgestein
    Avatar von lindesbs
    Registriert seit
    05.06.2009.
    Ort
    Oer-Erkenschwick
    Beiträge
    4.154
    Partner-ID
    keine
    User beschenken
    Wunschliste

    Standard

    dein PHP oder Contao blockt da nichts.
    Liegt deine OnlineVersion evt. auf dem selben Server wie die DB ? Dann ist die Namensaufloesung im Normalfall auch localhost (127.0.0.1)

    fuer dne normalen MySQL Connect brauchst du auch keinen Typ wie http oder aehnliches, das ist eine portbasierte Kontaktaufnamhe, weshalb du den Host und den Port angeben musst.

    Ich vermute stark, das einfach der Zugriff auf den MySQL / DB von aussen einfach nicht erlaubt ist.

    Wenn Du eine Konsole hast (linux oder Windows) mach mal ein

    telnet xyz.de 3306
    Damit sprichst du den MySQL Server direkt an. Evt. ist bei Dir auch eine Firewall aktiv, die den Zugriff verhindert.
    von Willi Voltz aus PR 500: Henry George sagte einmal: »Kultur ist Zusammenarbeit.«


    Contao-Hosting: begeisterter Uberspace-Nutzer

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •