Ergebnis 1 bis 8 von 8

Thema: Contao 5.3 Datenbankabfrage in html5-Template

  1. #1
    Contao-Nutzer
    Registriert seit
    06.10.2011.
    Ort
    Wien
    Beiträge
    90

    Standard Contao 5.3 Datenbankabfrage in html5-Template

    Hallo, wie ist der Weg in Contao 5.3 um Daten einer Datenbankabelle (liegt in der selben Datenbank wie Contao) in einem eigenen html5-Template einzusetzen? Ich habe jetzt folgendes zusammen geschustert:

    PHP-Code:
    $db Contao\System::getContainer()->get('database_connection');
    $strQuery "SELECT * FROM ww_tourenauswahl WHERE tour_id='".$tour."' LIMIT 1" ;
    $objTourdaten $db->prepare($strQuery)->execute()->fetchAllAssociative(); 
    PHP-Code:
    echo $objTourdaten->kondition
    erzeugt aber keine Ausgabe. Im Debug-Modus wird "Warning: Attempt to read property "kondition" on array" ausgegeben. Ich habe alternativ es mit fetchAll() und nur execute() ausprobiert.

    Über Hilfe wäre ich dankbar. Es handelt sich um ein Projekt, dass ich gerade versuche von 4.13 auf 5.3 zu bringen. Ich konnte schon viele Probleme dabei lösen, aber hier hänge ich nun.

    Danke und liebe Grüße!

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    37.191
    Partner-ID
    10107

    Standard

    Du hast ->fetchAllAssociative() benutzt - $objTourdaten ist daher nun ein Numerisches Array der Einträge als Assoziatives Array.
    » sponsor me via GitHub or Revolut

  3. #3
    Contao-Nutzer
    Registriert seit
    06.10.2011.
    Ort
    Wien
    Beiträge
    90

    Standard

    Danke für die Rückmeldung. Kann man "->fetchAllAssociative()" auch weglassen bzw. was wäre besser?

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    37.191
    Partner-ID
    10107

    Standard

    PHP-Code:
    $db Contao\System::getContainer()->get('database_connection');
    $tourDaten $db->fetchAssociative('SELECT * FROM ww_tourenauswahl WHERE tour_id = ? LIMIT 1', [$tour]); 
    » sponsor me via GitHub or Revolut

  5. #5
    Contao-Nutzer
    Registriert seit
    06.10.2011.
    Ort
    Wien
    Beiträge
    90

    Standard

    PHP-Code:
    $tour $GLOBALS['objPage']->alias ;
    $db Contao\System::getContainer()->get('database_connection');
    $tourDaten $db->fetchAssociative('SELECT * FROM ww_tourenauswahl WHERE tour_id = ? LIMIT 1', [$tour]);
    echo 
    'TEST:' $tourDaten->kondition
    Das wäre der Code der Datei tourdaten.php. Diese liegt im /template Order und wird mit {{file::tourdaten.php}} eingebunden. $tourDaten->kondition gibt leider nichts aus, ist ggf. der falsche Aufruf oder es fehlt mir noch etwas. $tour funktioniert. Error-Log gibt nichts aus. Aktiviere ich den Debug-Modus habe ich zwei Fehler:

    Warning: Attempt to read property "kondition" on array

    Attempted to call function "highlight_file" from namespace "Symfony\Component\ErrorHandler\ErrorRenderer" .
    Did you mean to call "\safe\highlight_file"?


  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    37.191
    Partner-ID
    10107

    Standard

    Du hast ->fetchAssociative() benutzt - dein $tourDaten ist also nun ein Assoziatives Array. Tip: in solchen Fällen einfach Debugging-Hilfen wie dump() verwenden, damit du siehst, was du hast.
    » sponsor me via GitHub or Revolut

  7. #7
    Contao-Nutzer
    Registriert seit
    06.10.2011.
    Ort
    Wien
    Beiträge
    90

    Standard

    dump() hatte zuvor die Seite abstürzen lassen, aber nun klappte es. Ich kann die Werte aus dem Array via $tourDaten['kondition'] abfragen. Danke für die Hilfe, ein Obulus ist über Revolut raus.

    Wo in der Doku wird fetchAssociative() behandelt bzw. wonach muss ich suchen um mich weiter einzulesen? LG

  8. #8
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    37.191
    Partner-ID
    10107
    » sponsor me via GitHub or Revolut

Aktive Benutzer

Aktive Benutzer

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

Berechtigungen

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