[PHP5] [Einsteiger] Problem mit function if else

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

  • [PHP5] [Einsteiger] Problem mit function if else

    Hallo Leute,

    ich bin neu hier und auch neu dabei PHP zu lernen. Bitte etwas nachsichtig.

    Folgende Problemstellung:


    Ich erstelle gerade meine erste Seite in PHP. Um die Inhalte dynamisch auszutauschen habe ich u.a. eine Funktion geschrieben, die es mir ermöglich anhand der Navigation html Dateien zu laden. Also wenn der Link impressum heißt, lädt er impressum.html. Nun sehe ich gerade, das es eine Funktion $_SERVER("REQUEST_URI"] gibt, die mir den Pfad ausgibt. Jetzt möchte beides verbinden.

    Hier mal meine Funktion (Auszug aus der template.php)


    PHP-Code:

     
    function getContent($inhalt) {
         
    if (
                
    $_REQUEST['site'] == "impressum" || 
                
    $_REQUEST['site'] == "sitemap" || 
                
    $_REQUEST['site'] == "kontakt"
                
    ) {
           return 
    file_get_contents($this->tplDir.$_REQUEST['site'].".html");
           exit();
         } 
    bis hierhin funktioniert es ganz gut. Jetzt möchte ich die Funktion REQUEST_URI verwenden. Er soll also wenn eine bestimmte seite im Browser aufgerufen ist, Inhalt x laden.


    PHP-Code:

     
    function getContent($inhalt) {
         
    if (
                
             
    $_SERVER["REQUEST_URI"] == "/start.php" ||
                    
    $_REQUEST['site'] == "impressum" || 
            
    $_REQUEST['site'] == "sitemap" || 
            
    $_REQUEST['site'] == "kontakt"
                
    ) {
           return 
    file_get_contents($this->tplDir.$_REQUEST['site'].".html");
           exit();
         } 
    wie bekomme ich REQUEST_URI da mit rein?

    edit: aus versehen zu schnell speichern gedrückt, hab schon folgendes probiert:

    PHP-Code:

         
    if (
         (
    $_SERVER["REQUEST_URI"] == "start.php"
         {
    $requesturi $_SERVER['REQUEST_URI']}{
           return 
    file_get_contents($this->tplDir.$requesturi".html");
           exit();
         } 
    Zuletzt geändert von Wurstprofessor; 26.02.2008, 12:30.
    alles wird juut

  • #2
    schaue dir mal mod_rewrite an. damit bist du schneller und sauberer unterwegs.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Hi abraxax,

      mod_rewrite ist an. Wie hilft mir das?

      Ciao
      alles wird juut

      Kommentar


      • #4
        lass dir doch mal ausgeben was der "file_get_contents"-Funktion übergeben wird und schau was da nicht passt.

        Kommentar


        • #5
          Original geschrieben von Wurstprofessor
          Hi abraxax,

          mod_rewrite ist an. Wie hilft mir das?

          Ciao
          Hallo,

          ich denke, dass Abraxax meinte, dass du dir modrewrite anschauen sollst und nicht gucken, ob es an ist

          http://www.modrewrite.de/

          mfg

          Kommentar


          • #6
            Hallo,

            vielen Dank für den Tipp mit modrewrite, dadurch erspar ich mir einiges. Auch wenn es noch nicht tiptop ist habe ich mir die Function jetzt so geschrieben:

            PHP-Code:
               function getContent($content) {
                 if (
                        
            $_SERVER["REQUEST_URI"] == "/verzeichnis1" && $_REQUEST['site'] == "verzeichnis1" ||
                        
            $_SERVER["REQUEST_URI"] == "/verzeichnis2" && $_REQUEST['site'] == "verzeichnis2" ||
                        
            $_REQUEST['site'] == "impressum" || 
                        
            $_REQUEST['site'] == "sitemap" || 
                        
            $_REQUEST['site'] == "kontakt"
                        
            ) {
                   return 
            file_get_contents($this->tplDir.$_REQUEST['site'].".html");
                   exit();
                 } 
            manchmal muss man nur mal drüber sprechen, auf die und verknüfung bin ich nicht gekommen.


            Ciao
            alles wird juut

            Kommentar


            • #7
              Bei noch mehr Seiten fördert switch übrigens stark die Übersicht.
              Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

              Kommentar


              • #8
                und mod_rewrite kann das eigentlich schon von ganz alleine ... ohne php ...
                INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                Kommentar

                Lädt...
                X