Template neue Seite ?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Template neue Seite ?

    Guten Abend,
    ich habe mal wieder ein Problem und auch die Suchfunktion hat mir diesmal nicht weitergeholfen.

    Ich sitze noch immer daran meine Seite in Templates aufzubauen nur leider komme ich im moment nicht mehr weiter.

    Die Seite ist wie folgt aufgebaut

    | navi links | mitte | login bereich |

    Ich habe eine Funktion.php, in der wie sollte es auch anders sein der ganze PHP Quelltext ist.

    So rufe ich meine Templates auf
    PHP-Code:
    function nav_rechts() 
    {
    switch(
    $_GET['navirechts'])
            {    
                case 
    "user_r_eingeloggt": return str_replace("\"","\\\"",implode("",file('templates/user_r_eingeloggt.templ'))); break;
                case 
    "login": return str_replace("\"","\\\"",implode("",file('templates/login.templ'))); break;
                default: return 
    str_replace("\"","\\\"",implode("",file('templates/login.templ'))); // Startseite als default
            
    }

    Diesen Block habe ich 3 mal für navi links , mitte und dem login Bereich.
    Wenn ich eine neue Seite anzeigen lassen wollte habe ich den Befehl

    PHP-Code:
    if ....
    else
         {
              
    header ("Location: ?navigation=user_r_eingeloggt"); 
         } 
    genutzt und einfach meine Variablen über die URL an das Template weitergegeben. Nun ist es aber so, wenn sich der User einloggt sollen alle drei Ebenen wechseln. Navi links , mitte und der Login Bereich, das geht leider nicht mehr mit dem Befehl header.

    Wie komme ich nun an meine Templates ohne diesen Befehl ?

  • #2
    Re: Template neue Seite ?

    Original geschrieben von Mundgeruch
    Wie komme ich nun an meine Templates ohne diesen Befehl ?
    kannstdudeinefragepräziserstellen? diemeistenlesenhiernurdielinkehälftewegendemscrollenundallesineinezeilezupackenistauchblöd.
    Kissolino.com

    Kommentar


    • #3
      Guten Morgen
      Naja ich will das wenn sich der User rechts einloggt alle 3 ich nenne sie mal Blöcke wechseln.

      PHP-Code:
      if ....
      else
           {
                
      header ("Location: ?navigation=user_r_eingeloggt"); 
           } 
      damit klappt es bei einem Block, aber mitte sowie links die navigation soll auch ihren Inhalt wechseln und ich weiss einfach nicht wie ich es hinbekomme.

      Habe mal heute Nacht schon von der Seite geträumt und mir kam spontan die idee

      PHP-Code:
      header ("Location: ?navirechts=user_r_eingeloggt&navigation=kontakt"); 
      zu schreiben. Dummerweise klappt das nun und mein Problem wäre nun behoben Würde mich allerdings trotzdem Interessieren ob es nicht noch einen anderen Weg gibt ohne das ich mit dem header Befehl arbeiten muss, möchte nicht so gerne alle variablen über die URL verschicken.

      Kommentar


      • #4
        definier mal bitte "Block"
        frame?
        Die Milch bleibt ranzig!

        Kommentar


        • #5
          Hallöchen,
          naja es ist kein Frame keine ahnung wie sich das genau nennt wenn man eine Seite mit Templates aufbaut.

          Ich habe mir das Design zusammengeschustert und in eine index.php gepackt. In den Tabellen hol ich mir dann die drei Templates einmal wie unten schon geschrieben navi links , mitte und den login Bereich.

          Nun wechsel ich immer mit header die einzelnen Blöcke .. Ebenen oder wie auch immer man es nennt. Sagen wir mal Platzhalter

          Aber mit header muss ich alle Variablen mit der URL übergeben und das ist nicht wirklich so toll.

          Danke für eure Hilfe

          Kommentar


          • #6
            sry ich versteh den inhalt deines problems und deiner fragen nicht
            vielleicht ma n link oder ne ähnliche seite das man sich das ma bildlich vorstellen kann?
            Die Milch bleibt ranzig!

            Kommentar


            • #7
              Guguck,
              bin gerade auf der arbeit und kann nicht das neuste Update auf meinen Server laden. Also auf http://www.free-ticker.de/neu/ ist ja Links ein Menü, dann die mitte mit dem Inhalt und rechts kann man sich einloggen. Wenn man sich nun rechts einloggt soll der Inhalt in der Mitte und auch der Memberbereich kommen.

              Habe jedes Template über meine Funktionsseite definiert und rufe jedes Template mit header auf und denke das es sicherlich einfacher geht. Mit header muss ich ja bekanntlich alle variablen wie Session oder User-ID über die URL weitergeben, finde diese lösung nicht ganz so nett und hoffe darauf das es eine bessere Lösung gibt.

              Kommentar


              • #8
                ich seh da nur tabellen..

                wie hast du denn deine "blöcke" erstellt? code?
                Die Milch bleibt ranzig!

                Kommentar


                • #9
                  Super so sollte es auch bei Templates sein.

                  Wenn ich zuhause bin Poste ich mal meinen Quelltext, danke für deine Hilfe.

                  Kommentar


                  • #10
                    Hallöchen,
                    so endlich Feierabend, ich habe wie schon beschrieben eine index.php erstellt und darin mein Design gepackt. In den Tabellen habe ich Platzhalter gepackt wie
                    PHP-Code:
                    <?
                    eval("dooutput(\"".nav_seiten()."\");"); 
                    ?>
                    dann habe ich eine Funktion.php erstellt in dem nun folgendes steht.
                    PHP-Code:
                    function dooutput($template# Templates anzeigen

                        echo 
                    $template

                    # bereich mitte
                    function nav_seiten() 
                    {
                    switch(
                    $_GET['navigation'])
                            {
                                case 
                    "startseite": return str_replace("\"","\\\"",implode("",file('templates/startseite.templ'))); break;
                                case 
                    "anmelden": return str_replace("\"","\\\"",implode("",file('templates/anmelden.templ'))); break;
                                case 
                    "anmelden1": return str_replace("\"","\\\"",implode("",file('templates/anmelden1.templ'))); break;
                                case 
                    "anmelden_ok": return str_replace("\"","\\\"",implode("",file('templates/anmeldenok.templ'))); break;
                                case 
                    "kontakt": return str_replace("\"","\\\"",implode("",file('templates/kontakt.templ'))); break;
                                case 
                    "hilfe": return str_replace("\"","\\\"",implode("",file('templates/hilfe.templ'))); break;
                                case
                    "impressum": return str_replace("\"","\\\"",implode("",file('templates/impressum.templ'))); break;
                                case
                    "agb": return str_replace("\"","\\\"",implode("",file('templates/agb.templ'))); break;
                                case
                    "userseiten": return str_replace("\"","\\\"",implode("",file('templates/userseiten.templ'))); break;
                                case
                    "passwort": return str_replace("\"","\\\"",implode("",file('templates/passwort.templ'))); break;
                                case 
                    "passwort_ok": return str_replace("\"","\\\"",implode("",file('templates/passwortok.templ'))); break;
                                case 
                    "login_falsch": return str_replace("\"","\\\"",implode("",file('templates/login_falsch.templ'))); break;
                                default: return 
                    str_replace("\"","\\\"",implode("",file('templates/startseite.templ'))); // Startseite als default
                            
                    }

                    Wenn ein Formular überprüft wird wie zb beim anmelden schicke ich es wieder an sich selber mit <form action="?navigation=anmelden" method="post" enctype="multipart/form-data">

                    Damit nun alle eingaben überprüft und ausgewertet werden können, habe ich in meine funktions.php das stehen
                    PHP-Code:
                    if ($_POST['anmelde_start'] == "Anmelden")
                    {
                        
                    $usernick $HTTP_POST_VARS["usernick"];
                        
                    $ticker_tag $HTTP_POST_VARS["ticker_tag"];
                        
                    bla bla 
                    Nun ist wieder die Frage wie ich ein Template in eine Tabelle includen kann ohne den Befehl header zu nutzen? Hoffe mit den Infos kann mir jemand weiterhelfen.

                    Kommentar


                    • #11
                      sind die templates so gestaltet das sie nur für diese eine tabelle dann gelten oder für die ganze seite?
                      Die Milch bleibt ranzig!

                      Kommentar


                      • #12
                        Hallöchen,
                        ja ich kann Templates einer bestimmten Tabelle zuweisen, das mach ich mit Variablen in der URL. Zb. mittlere Tabelle ist ?navigation=anmelden

                        ?navigation ist immer mittlere tabelle und anmelden ist mein Template, daher klappt es auch mit dem Befehl header nur halt das problem mit den Variablen in der URL.

                        Habe also noch immer keine alternative zu header

                        Kommentar

                        Lädt...
                        X