Contao-Camp 2024
Ergebnis 1 bis 8 von 8

Thema: Modul Anpassungen für Contao 3 - Input nun statisch, daher....

  1. #1
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.477
    User beschenken
    Wunschliste

    Standard Modul Anpassungen für Contao 3 - Input nun statisch, daher....

    In einem meiner BE Modul stand in der compile Methode
    PHP-Code:
    $this->Input->post( ... ) 
    Das wirft nun ein Fehler:
    Code:
    Fatal error: Call to a member function post() on a non-object
    Logisch.

    Hierfür gibt es nun 2 Varianten zum Beheben.
    1. Contao 2.x kompatibel: vor dem ersten Zugriff auf Input erstmal importieren:
    PHP-Code:
    $this->import('Input'); 
    2. für Contao 3 (und somit nur dort funktionell) ändert man die Input Zeile wie folgt:
    PHP-Code:
    \Input::post( ... ) 
    Beide Arten haben bei mir funktioniert. (BE callback Modul)


    Es gibt wohl ne ganze Reihe weitere Classen die nun statisch sind, bei denen ist in der gleichen Art zu verfahren.

    Beispiele:
    PHP-Code:
    $this->Environment->httpUserAgent
    //wird zu 
    \Environment::get('httpUserAgent')

    $this->Environment->httpAcceptLanguage
    //wird zu 
    \Environment::get('httpAcceptLanguage')

    $this->Environment->remoteAddr
    //wird zu 
    \Environment::get('remoteAddr')

    $this->Environment->ip
    //wird zu 
    \Environment::get('ip')

    $this->Environment->request
    //wird zu 
    \Environment::get('request')

    $this->Environment->base
    //wird zu 
    \Environment::get('base')

    //Image Thumb
    $src = \Image::get($strFile$width$height$mode); 
    Geändert von BugBuster (01.10.2012 um 15:26 Uhr)
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  2. #2
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.477
    User beschenken
    Wunschliste

    Standard

    Sicherlich unnötig zu sagen, aber
    PHP-Code:
    $this->Input->get( ... ) 
    wird dann bei Variante 2 zu
    PHP-Code:
    \Input::get( ... ) 
    und
    PHP-Code:
    $this->Input->cookie( ... ) 
    wird zu
    PHP-Code:
    \Input::cookie( ... ) 
    Geändert von BugBuster (12.08.2012 um 00:59 Uhr) Grund: cookie Beispiel
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  3. #3
    Contao-Nutzer Avatar von Nils Heinold
    Registriert seit
    04.09.2010.
    Ort
    Uckermark
    Beiträge
    155
    User beschenken
    Wunschliste

    Standard Backslash in Contao 3?

    Sicher, dass der Backslash noch davor kommt?

    Danke im voraus Nils

  4. #4
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.477
    User beschenken
    Wunschliste

    Standard

    Ja, weil das eine Namespace Ansprache ist, also schon im neuem Stil. Da ist dann zwar etwas mixed Code im Modul aber was solls, irgendwann ist dann alles auf Namespace umgeschrieben

    Aber du hast recht, theoretisch müsste es sogar ohne gehen, Dank der globalen Namespaces.
    Werd ich mal heute Abend probieren.
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  5. #5
    Contao-Fan Avatar von Stranger
    Registriert seit
    20.06.2009.
    Ort
    Blankenburg
    Beiträge
    746
    Partner-ID
    5635
    User beschenken
    Wunschliste

    Standard

    Wie kommt man denn in Contao 3 an den Referer ran?

    Folgendes klappt irgendwie nicht:
    \Environment::get('referer')
    \Environment::get('Referer')
    Du willst dich bei mir bedanken?
    Ich freue mich über Geschenke von meiner Amazon-Wunschliste.

    Contao-Anwender seit 2008
    Contao-Entwickler seit 2013, mehr als 50 Contao Erweiterungen programmiert

    Mein Unternehmen aus Blankenburg (Harz): Fast & Media

  6. #6
    Contao-Fan Avatar von Stranger
    Registriert seit
    20.06.2009.
    Ort
    Blankenburg
    Beiträge
    746
    Partner-ID
    5635
    User beschenken
    Wunschliste

    Standard

    Hab mich seit 30 min tot gegoogelt, aber manchmal hilft einfach den Contao-Code zu durchsuchen
    $this->getReferer() ist die Lösung!
    Du willst dich bei mir bedanken?
    Ich freue mich über Geschenke von meiner Amazon-Wunschliste.

    Contao-Anwender seit 2008
    Contao-Entwickler seit 2013, mehr als 50 Contao Erweiterungen programmiert

    Mein Unternehmen aus Blankenburg (Harz): Fast & Media

  7. #7
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.477
    User beschenken
    Wunschliste

    Standard

    im Code hättest du dann auch weiter gefunden, dass
    Code:
    $this->getReferer()
    zeigt auf
    Code:
    \System::getReferer()
    und darin der Frontend Referer auch geholt wird über
    Code:
    \Environment::get('httpReferer')
    Wobei ich die ersten beiden Varianten bevorzugen würde, da diese noch einige Sonderfälle und Bedingungen abdeckt.
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  8. #8
    Contao-Nutzer Avatar von gracilis
    Registriert seit
    19.06.2009.
    Ort
    Rostock
    Beiträge
    180

    Standard

    Hallo, da ich es jetzt erst benötige und in der contao-academy einen Beitrag dazu gelesen habe, konnte ich schon eine "Ausgabeseite der Formular-daten", wie es mit efg geht, machen.
    Leider weiss ich nicht, wie ich Dateianhänge in einer Email auslese.

    Code:
    \Input::post('Datei_1')
    bringt nichts. Wahrscheinlich müste man ein Array der [file][tmp] durchlaufen?
    Ansonsten geht das gut, auch mit dem Auslassen der nicht gesendeten (leeren) Felder.

    Danke.
    .per.aspera.ad.astra.

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
  •