Ergebnis 1 bis 10 von 10

Thema: Mit {{file::}} eigenes PHP-Script einbinden und damit auf Parameter zugreifen?

  1. #1
    Contao-Nutzer Avatar von zan
    Registriert seit
    11.05.2010.
    Beiträge
    35

    Frage Mit {{file::}} eigenes PHP-Script einbinden und damit auf Parameter zugreifen?

    Hallo Gemeinde,

    ich habe unter Contao 3.2.13 eine eigene PHP-Datei auf einer Seite eingebunden:

    HTML-Code:
    {{file::foo/bar.php}}
    Das funktioniert auch wie gewünscht. Jetzt müsste ich aber der bar.php noch einige Parameter mitgeben, sodass mein Include sinngemäß so aussieht:

    HTML-Code:
    {{file::foo/bar.php?a=1&b=2}}
    Meine Frage: Wie kann ich in der bar.php auf die übergebenen Werte zugreifen? Bei einer anderen Installation (3.2.10) funktioniert das hier:

    HTML-Code:
    if($this->Input->get('typ') != "")	{$typ = $this->Input->get('typ');}
    - aber leider nicht bei der neuen Seite unter 3.2.13...

    Vielen Dank für einen Tipp!

    cheers, zan
    See you UP in the sky!
    papillon.aero

  2. #2
    Contao-Urgestein
    Registriert seit
    30.01.2011.
    Ort
    Stuttgart
    Beiträge
    4.138

  3. #3
    Contao-Nutzer Avatar von zan
    Registriert seit
    11.05.2010.
    Beiträge
    35

    Standard geht leider noch nicht

    Hallo magicsepp,

    vielen Dank für den Tipp, das hatte ich auch schon probiert, leider ohne Erfolg...

    Das müsste dann für 3.2 analog zum Beispiel doch so aussehen:

    PHP-Code:
    echo \Input::getInstance()->get('a'); 
    oder?

    ...da kommt aber leider nichts...

    cheers, zan
    See you UP in the sky!
    papillon.aero

  4. #4
    Alter Contao-Hase Avatar von haendersonfox
    Registriert seit
    22.05.2012.
    Beiträge
    1.043

    Standard Mit {{file::}} eigenes PHP-Script einbinden und damit auf Parameter zugreifen?

    hallo zan,

    sicherlich geht es um formularvariablen, oder?

    schickst du das formular mit get oder post ab?

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

    Standard

    Zitat Zitat von zan Beitrag anzeigen
    Hallo magicsepp,

    vielen Dank für den Tipp, das hatte ich auch schon probiert, leider ohne Erfolg...

    Das müsste dann für 3.2 analog zum Beispiel doch so aussehen:

    PHP-Code:
    echo \Input::getInstance()->get('a'); 
    oder?

    ...da kommt aber leider nichts...

    cheers, zan
    PHP-Code:
    \Input::get('...'
    reicht auch.

    Das wird in deinem Fall aber nicht funktionieren - so holst du Variablen aus $_GET und $_POST, und diese Variablen kommen aus dem HTTP Request. Du hast aber noch keinen HTTP Request, sondern willst dem inkludierten PHP File Parameter mitgeben. Mich wundert, dass der Insert Tag so wie du ihn hier angegeben hast überhaupt funktioniert.

  6. #6
    Contao-Fan Avatar von kos
    Registriert seit
    22.06.2009.
    Ort
    Westerwald
    Beiträge
    888

    Standard

    Bei funktioniert das Konstrukt
    HTML-Code:
    {{file::foo/bar.php?a=1&b=2}}
    in einer frischen 3.3.4-Installation und zwar sowohl mit
    PHP-Code:
    echo \Input::get('a'); 
    als auch mit
    PHP-Code:
    echo $this->Input->get('b'); 

  7. #7
    Contao-Nutzer Avatar von zan
    Registriert seit
    11.05.2010.
    Beiträge
    35

    Standard gelöst!

    Vielen Dank für die Hinweise!

    Wie so oft wars ein Detail...

    Meine übergebene Variable war eine URL, die ihrerseits ebenfalls Parameter angehängt hatte, somit kamen zwei ? im String vor. Ich habe jetzt das zweite ? durch & ersetzt und kaum macht mans richtig,...

    Danke nochmal!

    cheers, Zan
    See you UP in the sky!
    papillon.aero

  8. #8
    Contao-Nutzer Avatar von Traumkunst
    Registriert seit
    22.01.2011.
    Ort
    In der Nähe von Dortmund
    Beiträge
    229

    Standard

    Darf ich hier mal hintendran?

    Ich würde gerne ein ext. PHP-File einbinden, und eine Contao-Umgebungsvariable, nämlich das page_alias, als GET-Parameter übergeben. Ich mache ein HTML-Modul, und da steht folgendes drin:

    HTML-Code:
    {{file::ordner/file.php?page={{env::page_alias}}}}
    Leider kommt der Wert von page nicht bei der PHP-Datei an. Gegenprobe mit statischem Wert:

    HTML-Code:
    {{file::ordner/file.php?page=blabla}}
    funktioniert, da kann ich mir mit den hier schon genannten Methoden den Wert von "page" ausgeben lassen. Aber die {{env::page_alias}} wird leider nicht übergeben...


    EDIT: Hoppla, ich stelle gerade fest, dass mir {{env::page_alias}} auch bei direkter Verwendung im Modul gar nicht ausgegeben wird. Stehen die Contao-Umgebungsvariablen im Modul-Typ HTML gar nicht zur Verfügung (Contao 3.3.6)? Also unter Layout > Themes > FE-Modul > HTML? Das ist ja unerwartet...
    Geändert von Traumkunst (08.11.2014 um 17:37 Uhr)

  9. #9
    Contao-Fan Avatar von kos
    Registriert seit
    22.06.2009.
    Ort
    Westerwald
    Beiträge
    888

    Standard

    Zitat Zitat von Traumkunst Beitrag anzeigen
    ...Hoppla, ich stelle gerade fest, dass mir {{env:: page_alias}} auch bei direkter Verwendung im Modul gar nicht ausgegeben wird. Stehen die Contao-Umgebungsvariablen im Modul-Typ HTML gar nicht zur Verfügung (Contao 3.3.6)...
    Das wird nicht ausgegeben, weil es dieses Insertag nicht mehr gibt => Contao 3.3 Handbuch.
    Verwende bessser {{page::alias}}
    Geändert von kos (09.11.2014 um 05:51 Uhr) Grund: Tippfehler

  10. #10
    Contao-Nutzer Avatar von Traumkunst
    Registriert seit
    22.01.2011.
    Ort
    In der Nähe von Dortmund
    Beiträge
    229

    Standard

    Wow, diese Änderung ist mir völlig entgangen.
    Vielen lieben Dank. Jetzt funktioniert es auch

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
  •