Ergebnis 1 bis 18 von 18

Thema: Anmelde Link wie im Beispiel einbinden aber wie?

  1. #1
    Contao-Nutzer
    Registriert seit
    22.03.2012.
    Beiträge
    39

    Standard Anmelde Link wie im Beispiel einbinden aber wie?

    Hallo zusammen,
    ich habe 2 Fragen
    Erstmal die 1. Frage:
    Wie kann man sowas (Anmelde Link und das Formular öffnet sich) hier mit dem Katalog von Contao erstellen?
    http://www.training.sd-technologies....c-termine.html
    Sodass man auf den Anmelde Link klickt und sich ein Formular öffnet. Habe schon die Suche hier benutzt aber nichts passendes gefunden, vllt. kann mir einer helfen. Wäre echt super

    Nun meine 2. Frage:
    Wie kann man mit den Reiter im Katalog verschiedene Überschriften anzeigen lassen sobald man einen anderen Button anklickt.
    Beispiel:
    http://www.training.sd-technologies....chreibung.html
    Man klickt dort auf Beschreibung und es wird die Überschrift "AdminStudio Schulung - Basic" angezeigt, danach klickt man auf Ablauf und diese Überschrift "AdminStudio Training - Basic" angezeigt... usw. wie macht man sowas? (Ich habe auch die Erweiterung Tabcontrol installiert, wäre gut wenn es damit machbar wäre)

    Ich hoffe ich konnte es gut erklären, wenn noch Fragen sind einfach fragen ich schaue regelmässig rein

    LG

  2. #2
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.292
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo DarkDeviLw,
    beim nächsten mal besser direkt in den Catalog Bereich hier im Forum posten bitte ;-)

    Zu deiner 1. Frage:
    http://de.contaowiki.org/Formulardat...%C3%BCbergeben

    Zu deiner 2. Frage:
    Such dir nen passendes Tutorial für Tabs (CSS und JavaScript, am besten mit Mootools) und pass dein Template so an, das es funktioniert ;-)
    Dafür sind die Templates da (vor allem die vom Catalog).

    Viele Grüße
    Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
    [Arbeitet bei -> Paus Design & Medien]
    "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

  3. #3
    Contao-Nutzer
    Registriert seit
    22.03.2012.
    Beiträge
    39

    Standard

    Schonmal vielen Dank für die Antwort, werde mich mal durchlesen und wenn ich Fragen habe melde ich mich nochmal hier

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

    Support Contao

    Standard

    [Moderation: Thema verschoben.]
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  5. #5
    Contao-Nutzer
    Registriert seit
    22.03.2012.
    Beiträge
    39

    Standard

    Habe eine Frage und zwar könnte man das ganze auch mit der Erweiterung MegaMenü erstellen? Oder ist das nicht machbar? Weil ich komme darin absolut nicht weiter und brauche dringend Hilfe dabei :/

    LG

  6. #6
    Contao-Fan Avatar von Ulrich
    Registriert seit
    03.03.2010.
    Ort
    Freiburg i. Br.
    Beiträge
    395

    Standard

    Ich arbeite gerade auch an einer ähnliche Aufgabenstellung (Anmelde-Formular für Tanzkurse). Da ich so ziemlich alle Daten des Listen-Items an das Anmelde-Formular übergeben muss, diese aber nicht alle an die URL sichtbar anhängen möchte, arbeite ich mit einem Formular mit Feldern vom Typ "hidden" um mit der Methode "post" die Daten zu übergeben. Dazu habe ich von der Wiki-Seite ein Beispiel zur Template-Anpassung (Katalog-Liste) als Grundlage genommen und entsprechend angepasst.

    Da ich aber wenig Erfahrung mit PHP (insbesondere mit dem Handling von Sessions) habe, wäre ich dankbar für Hinweise ( hallo, MacKP ), ob es bei dieser Lösung Sicherheits- oder andere Risiken gibt, die ich berücksichtigen sollte, oder ob dies eine adäquate Lösung sein könnte. Hier der Code, leider noch ohne Kommentare ...

    PHP-Code:
    <?php
    if(count($this->entries)):
        
    $monbynam=array("","Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");
        
    $fieldwidth=array(0,115,115,115,73,68,115,115,115,115,115,115,115);
       
    $cur_fieldwidth=0;
       foreach(
    $this->entries as $entry):
          
    $erster_kurstag=$entry[data]['erster_kurstag'][value];
          
    $monbynum=date("n",$erster_kurstag);
          if(
    $cur_fieldwidth<$fieldwidth[$monbynum]):
             
    $cur_fieldwidth=$fieldwidth[$monbynum];
          endif;
       endforeach;
       
    reset($this->entries);
       
    $entry=current($this->entries);
       
    $cur_zielgruppe=$entry[data]['zielgruppe'][value];
       
    $cur_untergruppe='';
       
    $cur_style='';
       
    $cur_level='';
       
    $cur_lesson='';
       
    $cur_kurstag='';
       
    $cur_kurszeit='';
       
    $cur_erster_kurstag='';
       
    $cur_bemerkung=''?>
       <h1 class="ce_headline"><?php echo $cur_zielgruppe ?></h1>
       <div class="custom_tableless"><?php
          
    foreach($this->entries as $entry):
             
    $cur_untergruppe=$entry[data]['untergruppe'][value];
             
    $cur_kurstag=$entry[data]['kurstag'][value];
             
    $cur_kurszeit=$entry[data]['kursbeginn_H'][value].".".$entry[data]['kursbeginn_i'][value]." &ndash; ".$entry[data]['kursende_H'][value].".".$entry[data]['kursende_i'][value]." Uhr";
             
    $erster_kurstag=$entry[data]['erster_kurstag'][value];      
             
    $monbynum=date("n",$erster_kurstag);
             
    $cur_erster_kurstag="ab ".date("d",$erster_kurstag).". ".$monbynam[$monbynum];
             
    $cur_bemerkung=$entry[data]['bemerkung'][value];         
             if(
    $cur_style!=$entry[data]['style'][value]):
                
    $cur_style=$entry[data]['style'][value]; ?>
                <h2 class="red"><?php echo $cur_style?></h2><?php
             
    endif;                
             if(
    $cur_level!=$entry[data]['level'][value]):
                
    $cur_level=$entry[data]['level'][value];
                
    $cur_lesson=$entry[data]['kurseinheiten'][value]." x ".$entry[data]['kursdauer'][value]." Min. | ".$entry[data]['preis'][value]; ?>
                <h3><?php echo $cur_level?></h3>
                <p><?php echo $cur_lesson?></p><?php            
             
    endif; ?>                           
             <div class="item<?php echo $entry['class']; ?>">
                <div class="field kurstag float_left"><?php echo $cur_kurstag;?></div>
                <div class="field kurszeit float_left"><?php echo $cur_kurszeit;?></div>
                <div class="field erster_kurstag float_left" style="width:<?php echo $cur_fieldwidth?>px;"><?php echo $cur_erster_kurstag;?></div>
                <div class="field anmelden float_left">
                   <form action="anmelden.html" method="post">
                      <div class="formbody">
                         <input type="hidden" name="zielgruppe" value="<?php echo $cur_zielgruppe?>" />
                         <input type="hidden" name="untergruppe" value="<?php echo $cur_untergruppe?>" />
                         <input type="hidden" name="style" value="<?php echo $cur_style?>" />
                         <input type="hidden" name="level" value="<?php echo $cur_level?>" />
                         <input type="hidden" name="lesson" value="<?php echo $cur_lesson?>" />
                         <input type="hidden" name="kurstag" value="<?php echo $cur_kurstag?>" />
                         <input type="hidden" name="kurszeit" value="<?php echo $cur_kurszeit?>" />
                         <input type="hidden" name="erster_kurstag" value="<?php echo $cur_erster_kurstag?>" />
                         <input type="hidden" name="bemerkung" value="<?php echo $cur_bemerkung?>" />
                         <input type="hidden" name="REQUEST_TOKEN" value="{{request_token}}" />
                         <div class="submit_container">                                                                                                                         
                            <input type="submit" class="submit" value="anmelden" />
                         </div>                     
                      </div>
                   </form>               
                </div>                        
                <div class="field bemerkung"><?php echo $cur_bemerkung;?></div>
             </div><?php         
          
    endforeach; ?>
       </div><?php
    else:
       if(
    $this->condition): ?>
          <p class="condition"><?php echo $this->condition?></p><?php
       
    else: ?>
          <p class="info">Keine Einträge in der Kursliste gefunden!</p><?php
       
    endif;
    endif; 
    ?>
    So sieht die Liste im FE aus liste.png ...

    Grüße
    Uli
    Geändert von Ulrich (19.04.2012 um 09:42 Uhr)

  7. #7
    Contao-Urgestein Avatar von Tim G
    Registriert seit
    13.02.2010.
    Ort
    Lübeck
    Beiträge
    2.210
    User beschenken
    Wunschliste

    Standard

    (Ich denke das ist völlig legitim. Eine Session wird da übrigends nicht erstellt. Bin aber auch kein Sicherheitsexperte. Aber contao-Formulare machen nichts anderes. Theoretisch könnte man noch die hidden-Fields mit verschlüsselten Daten befeuern )
    http://www.tim-gatzky.de ˙ auch schon wieder 2 Jahre alt - wie die Zeit vergeht... muss mal umbauen.

  8. #8
    Contao-Fan Avatar von Ulrich
    Registriert seit
    03.03.2010.
    Ort
    Freiburg i. Br.
    Beiträge
    395

    Standard

    Zitat Zitat von Tim G Beitrag anzeigen
    (Ich denke das ist völlig legitim. Eine Session wird da übrigends nicht erstellt. Bin aber auch kein Sicherheitsexperte. Aber contao-Formulare machen nichts anderes. Theoretisch könnte man noch die hidden-Fields mit verschlüsselten Daten befeuern )
    Ok, danke! Hast Du mir ein "Stichwort" zum Thema "verschlüsselte Daten" ... wo kann ich da etwas finden? Ich denke, die Seiten mit den Formularen werden letztlich per "https" ins WEB gestellt, schon weil u.U. auch Bankdaten abgefragt und übermittelt werden (also in dem eigentlichen Anmelde-Formular) ...

  9. #9
    Contao-Urgestein Avatar von Tim G
    Registriert seit
    13.02.2010.
    Ort
    Lübeck
    Beiträge
    2.210
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von Ulrich Beitrag anzeigen
    Ok, danke! Hast Du mir ein "Stichwort" zum Thema "verschlüsselte Daten" ... wo kann ich da etwas finden? Ich denke, die Seiten mit den Formularen werden letztlich per "https" ins WEB gestellt, schon weil u.U. auch Bankdaten abgefragt und übermittelt werden (also in dem eigentlichen Anmelde-Formular) ...
    Uiuiui, da hab ich mich zuweit aus dem Fenster geleht.
    Also, kritisch sind sensible Daten sicher nur, wenn sie im hidden-Field schlummern, bis sie geschickt werden. Beim schicken sollte alles erstmal gutgehen via https.

    Das Passwort-Modul in der registration Erweiterung (core) gibt sicher besser Auskunft. Ich wüsste es jetzt auch nicht. Irgendwie durch md5 durchschleifen, ablegen, und wieder dekodieren.
    http://www.tim-gatzky.de ˙ auch schon wieder 2 Jahre alt - wie die Zeit vergeht... muss mal umbauen.

  10. #10
    Contao-Fan Avatar von Ulrich
    Registriert seit
    03.03.2010.
    Ort
    Freiburg i. Br.
    Beiträge
    395

    Standard

    Hallo Tim,

    ich übergebe per "Hidden-Fields" ja nur Daten, die ohnehin in der FE-Liste öffentlich sind, nämlich die Daten zu einen bestimmten Tanzkurs aus dem Angebot. Die sind also nicht als "sensibel" (in Sachen Sicherheit) anzusehen. Erst in dem eigentlichen Anmelde-Formluar werden sensible Daten stehen, die aber dann per https verschlüsselt und dirket per eMail versandt werden.

    Mir ging es in erster Linie darum, keine langen URLs benutzen zu müssen (GET-Methode), die dann auch noch manipuliert werden können ...

    Zum Thema Session:
    Das Template wird ja innerhalb der aktuellen Session aufgerufen (es wird im Script keine neue Session eröffnet, das ist klar). Wenn ich das eigentliche Anmelde-Formular aufrufe und dann vor dem Absenden mit dem Browser-Button "Seite zurück" wieder auf die Liste mit dem Formular zum Aufruf des eigentlichen Anmelde-Formulars zurück gehe und dieses dann erneut aufrufe, erzeuge ich einen invalid token request ... an dieser Stelle habe ich noch etwas "Kopfschmerzen" ...

    Vielen Dank nochmal!

    Uli

  11. #11
    Contao-Urgestein Avatar von Tim G
    Registriert seit
    13.02.2010.
    Ort
    Lübeck
    Beiträge
    2.210
    User beschenken
    Wunschliste

    Standard

    "Seite zurück" wieder auf die Liste mit dem Formular zum Aufruf des eigentlichen Anmelde-Formulars zurück gehe und dieses dann erneut aufrufe, erzeuge ich einen invalid token request ... an dieser Stelle habe ich noch etwas "Kopfschmerzen" ...
    Jup, das nervt mich auch immer und deswegen bei mir ausgeschaltet.
    http://www.tim-gatzky.de ˙ auch schon wieder 2 Jahre alt - wie die Zeit vergeht... muss mal umbauen.

  12. #12
    Contao-Fan Avatar von Ulrich
    Registriert seit
    03.03.2010.
    Ort
    Freiburg i. Br.
    Beiträge
    395

    Standard

    ... schon, aber ich kann ja die Request-Token-Prüfung wohl nur "global" ausschalten. D.h., dass ich auch an Stellen, wo es auch aus Sicherheitsgründen sinnvoll ist zu prüfen, eben darauf verzichten muss!

  13. #13
    Contao-Urgestein Avatar von Tim G
    Registriert seit
    13.02.2010.
    Ort
    Lübeck
    Beiträge
    2.210
    User beschenken
    Wunschliste

    Standard

    Einfach den request Aufruf unten raus?! Früher gings doch auch ohne.
    http://www.tim-gatzky.de ˙ auch schon wieder 2 Jahre alt - wie die Zeit vergeht... muss mal umbauen.

  14. #14
    Contao-Fan Avatar von Ulrich
    Registriert seit
    03.03.2010.
    Ort
    Freiburg i. Br.
    Beiträge
    395

    Standard

    Zitat Zitat von Tim G Beitrag anzeigen
    Einfach den request Aufruf unten raus?! Früher gings doch auch ohne.
    Das geht eben leider nicht. Wenn Du keinen Request-Token übergibst, aber die Prüfung aktiviert ist, dann wird das Fehlen des Token als "invalid request token" interpretiert (Contao 2.10.4)! Man kann den "Fehler" allerdings mit einem eigenen Template beantworten. Das ist der Punkt meiner Überlegungen momentan: ob ich die Prüfung ganz ausschalten soll, oder mit einem eigenen Template beantworte ...

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

    Support Contao

    Standard

    Möglicherweise wird es zukünftig für diese Meldung einen eigenen Seitentypen geben (ähnlich 403, 404), der dann bequem in der "Seitenstruktur" verwaltet und in weiterer Folge entsprechend gestaltet werden kann.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  16. #16
    Contao-Fan Avatar von Ulrich
    Registriert seit
    03.03.2010.
    Ort
    Freiburg i. Br.
    Beiträge
    395

    Standard

    Zitat Zitat von xchs Beitrag anzeigen
    Möglicherweise wird es zukünftig für diese Meldung einen eigenen Seitentypen geben (ähnlich 403, 404), der dann bequem in der "Seitenstruktur" verwaltet und in weiterer Folge entsprechend gestaltet werden kann.
    Das wäre hilfreich um den Fehler individuell beantworten zu können (Ticket?) ... z.B. mit einer Weiterleitung ...

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

    Support Contao

    Standard

    Zitat Zitat von Ulrich Beitrag anzeigen
    Ticket?
    Bitteschön: #4142, #3214
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  18. #18
    Contao-Fan Avatar von Ulrich
    Registriert seit
    03.03.2010.
    Ort
    Freiburg i. Br.
    Beiträge
    395

    Standard

    Zitat Zitat von xchs Beitrag anzeigen
    Bitteschön: #4142, #3214
    SUPER - DANKE!

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
  •