Ankündigung

Einklappen
Keine Ankündigung bisher.

MVC Anwendung / Layout refresh. Anfängerin braucht Hilfe :-)

Einklappen

Neue Werbung 2019

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

  • MVC Anwendung / Layout refresh. Anfängerin braucht Hilfe :-)

    Hallihallo,

    ich bin neu hier und dies ist mein erster Beitrag. Weiterhin bin ich ziemlicher PHP-Neuling

    Ich habe ein Projekt nach folgendem Vorbild gestartet: http://requiremind.com/a-most-simple...ners-tutorial/
    Soweit, so gut. MVC find ich an sich super einfach in PHP. Alles funktioinert und ich habe auch schon eine Member-Area mit Login, Registrierung, etc gebaut. Ich benutze bewusst kein Framework à la Laravel, weil ich hier selbst einiges lernen will.

    Mein Problem: Im oben verlinkten Tutorial wird das Layout per require_once() geladen. Im Layout befindet sich bei mir u.a. auch ien Menü (ist nicht ganz MVC, ich weiß) und dieses soll sich dynamisch ändern, je nachdem, ob man ausgeloggt oder eingeloggt ist.

    Nun wird bei einem neuen Seitenaufruf aber nur der Controller der Inhalt-Seite gefeuert und nicht das Layout refresht - d.h. es passiert: nichts.

    Hat jemand einen Tipp, wie ich diesen Refresh ausführen kann? Ich habe versucht, das Layout erneut zu "requiren", aber dann wird es quasi zweimal geladen (was auch Sinn macht).

    sorry, wenn ich mich hier noch nicht so gut mit Fachwörtern ausdrücken kann.

    Lieben Dank im Voraus für jede Hilfe!
    Verena


  • #2
    require_once ist hier vollkommen unangebracht, weil es keinen Grund gibt ein mehrfaches Require zu unterbinden. Und die ganzen static-Funktionen sind Mist. Das ist kein OOP. Das ist prozedurale Programmierung, die so ausschaut wie OOP, aber keins ist.

    Und bitte immer Code posten, bei dem das Problem nachvollzogen werden kann.

    Kommentar


    • #3
      Weiterhin bin ich ziemlicher PHP-Neuling... Soweit, so gut. MVC find ich an sich super einfach in PHP.
      Bist du nur in PHP neu oder generell beim Programmieren?

      Ich persönlich halte es gelinde gesagt für optimistisch, gleich zu Anfang in die objektorientierte Programmierung einzusteigen, ganz zu schweigen von einem doch nicht ganz so trivialen Muster wie MVC. Dennoch, Kritik an deiner Lernstrategie hilft dir vermutlich nicht weiter. Für den Anfang reicht es doch, einfach eine nav.php zu laden, die die Navigation rendert oder nicht? Ist dann zwar kein MVC, aber das MVC-Thema wird hier wahrscheinlich sowieso wieder in einer Grundsatzdiskussion ausarten

      PHP-Code:
      <DOCTYPE html> 
      <html> 
      <head></head> 
      <body> 
      <header>  <a href='/php_mvc_blog'>Home</a>  </header>
      <?php require_once('nav.php'); ?>
      <?php 
      require_once('routes.php'); ?>  
      <footer>  Copyright  </footer>  <body> <html>
      Tutorials zum Thema Technik:
      https://pilabor.com
      https://www.fynder.de

      Kommentar


      • #4
        Du kannst jetzt nicht im ernst erwarten das man sich das Tutorial durchliest um evtl zu verstehen was Du meinst? :-/

        So lüpt das hier nicht.

        Zeig uns Deine Code (sollte auch nachvollziehbar sein) und wo genau Dein Problem liegt. Da reden wird dann gern mit Dir drüber
        PHP-Manual ¡ mysql_* ist veraltet ¡ Debugging: Finde DEINE Fehler selbst ¡ Passwort-Hashing ¡ Prepared Statements

        Kommentar


        • #5
          Zitat von Andreas Beitrag anzeigen
          PHP-Code:
          <DOCTYPE html>
          <html>
          <head></head>
          <body>
          <header> <a href='/php_mvc_blog'>Home</a> </header>
          <?php require_once('nav.php'); ?>
          <?php 
          require_once('routes.php'); ?>
          <footer> Copyright </footer> <body> <html>
          Was habt ihr mit euren require_once? Das ist hier vollkommen Banane. require_once nur dann verwenden, wenn es wirklich notwendig ist. Ansonsten kann das schnell zu unerwünschten Nebeneffekten führen.

          Kommentar


          • #6
            Zitat von hellbringer Beitrag anzeigen
            Und die ganzen static-Funktionen sind Mist. Das ist kein OOP. Das ist prozedurale Programmierung, die so ausschaut wie OOP, aber keins ist.
            Stimmt kann man optimieren... Löst aber leider nicht nicht mein Problem, wenn ich von statischen Methoden auf Objekterzeugung umstelle... Wie gesagt, ich mach das seit ein paar Tagen und fuchse mich da gerade rein

            Kommentar


            • #7
              Zitat von Andreas Beitrag anzeigen
              Bist du nur in PHP neu oder generell beim Programmieren?

              Ich persönlich halte es gelinde gesagt für optimistisch, gleich zu Anfang in die objektorientierte Programmierung einzusteigen, ganz zu schweigen von einem doch nicht ganz so trivialen Muster wie MVC. Dennoch, Kritik an deiner Lernstrategie hilft dir vermutlich nicht weiter. Für den Anfang reicht es doch, einfach eine nav.php zu laden, die die Navigation rendert oder nicht? Ist dann zwar kein MVC, aber das MVC-Thema wird hier wahrscheinlich sowieso wieder in einer Grundsatzdiskussion ausarten
              Ganz neu bin ich im Programmieren nicht. Hab Erfahrung mit Java / JSP und da auch schon mal MVC programmiert (lange her). Hab mir einen Raspberry Pi gekauft und lerne nun an mehreren Fronten gleichzeitig: Linux, Python und eben auch PHP
              Bin eben ein kleines Nerd-Girl - hihi

              Kommentar

              Lädt...
              X