Ergebnis 1 bis 11 von 11

Thema: inputvar: Defaultwert für get::var

  1. #1
    Contao-Fan
    Registriert seit
    03.06.2010.
    Beiträge
    297

    Standard inputvar: Defaultwert für get::var

    Ich würde gerne beim Aufruf einer Contao-Seite einen Wert mitgeben -> ...home.html?variable=wert
    -> Die Seitenlinks sind ja von contao vorgegeben und ich habe leider in der Seitenstruktur leider keine Möglichkeit gefunden ein Postfix für den Link anzugeben -> Wie kann ich das also bewerkstelligen?

    Danke - Markus

  2. #2
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Das müsstest Du im entsprechenden Template abfangen und anhängen

    Oder aber so komische Konstrukte wie eine Seite anlegen, die eine externe Weiterleitung ist, aber eigentlich auf die gleiche Domain, nur halt mit Parameter, weiterleitet
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  3. #3
    Contao-Fan
    Registriert seit
    03.06.2010.
    Beiträge
    297

    Standard

    Danke, habe es wie von Dir vorgeschlagen im Template (fe_page) gelöst:

    Für alle die es interessiert hier der Code den ich eingefügt habe:

    PHP-Code:
        <?php 
          
    if ($_GET['meineVariable']=='' && ($this->pageTitle=='meinSeitentitel'))
          {
               
    $_GET['meineVariable'] = 'meinDefaultwert';
          }
        
    ?>

  4. #4
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Niemals GET und POST Daten einfach so roh verwenden!

    Jedes gute Framework bietet Filterklassen dafür
    PHP-Code:
    $inputGet $this->Input->get('key');
    $inputPost $this->Input->post('key'); 
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  5. #5
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.559
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Das Contao Framework bietet für GET-Parameter usw. eine eigene Input-Klasse an:
    PHP-Code:
    $this->Input->get('foobar'
    Allein schon aus sicherheitstechnischen Gründen empfiehlt sich die Filterung über die Klasse.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  6. #6
    Contao-Fan
    Registriert seit
    03.06.2010.
    Beiträge
    297

    Standard

    Ok, danke - Es handelt sich aber nicht um ein Formular sondern um eine händisch gesetzte nicht sicherheitsrelevante Variable:

    Losgeschickt habe ich diese auf folgende Art und Weise: ...meineSeite.html?variable=wert

    -> Hätte ich dann nicht bereits in hier ein Sicherheitsproblem weil jeder den Wert sehen kann?

    Wie könnte ich bei einer sicherheitsrelevanten Übergabe den Wert losschicken?

  7. #7
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Nein, das ist nicht das Problem, das Problem ist ja gerade, dass jeder diese Variable setzen kann, wie er will

    Je nach dem wo Du die dann verwendest, z.B. direkt in einem Datenbank-Query, kann das übel enden
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  8. #8
    Contao-Fan
    Registriert seit
    03.06.2010.
    Beiträge
    297

    Standard

    Zitat Zitat von Toflar Beitrag anzeigen
    Nein, das ist nicht das Problem, das Problem ist ja gerade, dass jeder diese Variable setzen kann, wie er will

    Je nach dem wo Du die dann verwendest, z.B. direkt in einem Datenbank-Query, kann das übel enden
    Ok, aber wie kann ich denn dann eine Variable sicher von einer Seite zu einer anderen verschicken?

    Im Moment habe ich auf der einen Seite den Link: www.website.com/seite.html?myvar=wert
    -> Muß ich hier auch schon was ändern oder passt das noch hinsichtlich der Sicherheit?

    Und in der Empfängerseite kann ich dann meinen Code wie folgt abändern?
    PHP-Code:
    <?php 
          
    if ($this->Input->get('myvar') =='' && ($this->pageTitle=='meinSeitentitel'))
          {
               
    $this->Input->get('myvar') = 'meinDefaultwert';
          }
        
    ?>

  9. #9
    Contao-Nutzer
    Registriert seit
    24.10.2010.
    Beiträge
    49

    Standard

    mit POST über ein verstecktes Formular auf jeder Seite. Oder über den Keks.
    Was auch immer der Sinn dahinter ist...

    hth,
    Christian G.

  10. #10
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von lichtfest Beitrag anzeigen
    Ok, aber wie kann ich denn dann eine Variable sicher von einer Seite zu einer anderen verschicken?

    Im Moment habe ich auf der einen Seite den Link: www.website.com/seite.html?myvar=wert
    -> Muß ich hier auch schon was ändern oder passt das noch hinsichtlich der Sicherheit?
    Die Parametrisierung kannst Du ja eben NICHT sichern. Jeder kann dein Script aufrufen wie er will. Deshalb musst Du den Input filtern
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  11. #11
    Contao-Fan
    Registriert seit
    03.06.2010.
    Beiträge
    297

    Standard

    Zitat Zitat von Toflar Beitrag anzeigen
    Die Parametrisierung kannst Du ja eben NICHT sichern. Jeder kann dein Script aufrufen wie er will. Deshalb musst Du den Input filtern
    ja, verstehe ... die variable kann ja jeder reinschicken. Daher die Input-Filterung

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
  •