Include system die 2te

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

  • #16
    wenn du testausgaben gemacht hättest, hättest du bemerkt dass test.php != test ist, oder???

    Um zu dieser Erkenntnis zu kommen, hilft dir ausnahmsweise auch das Manual nicht!

    Kommentar


    • #17
      so also bisher funtzt es !!

      hier der code...

      PHP-Code:

      <?
      $file = "";

      if (!$site) {$file = "willkommen.php";}
      if ($site == "test") $file = "test.php";
      if ($site == "test1") $file = "test1.php";
      if ($site == "test2") $file = "test2.php";


      ?>

      #die definition der seiten
      link:

      <div align="left"><a href="index.php?site=test.php">test</a></div>
      <div align="left"><a href="index.php?site=test1.php">test1</a></div>
      <div align="left"><a href="index.php?site=test2.php">test2</a></div>

      PHP-Code:

      <?php include($site); ?>

      #ausgabe


      Der code ist korrekt bis hier her oder? fehler?
      bzw jetzt noch eines!
      Wenn eine seite aufgerufen würde die aber nicht oben definiert worden ist soll eine error.php ausgegeben werden..

      kleiner tip?!

      Kommentar


      • #18
        LIES MEINE POSTS AUCH DURCH!!!

        Kommentar


        • #19
          ehhm ja?

          Kommentar


          • #20
            OffTopic:
            Achso, ich zieh mir jetzt zum xten mal Scary Movie rein. Aber die Lösung sollte wohl klar sein. Ansonsten das obligatorische "zu diesem Thema haben wir schon Threads", die allerdings etwas schwer zu finden sind, weils da keinen konkreten begriff zu gibt. aber url, include unr register_globals sollten dich leiten

            Kommentar


            • #21
              thx grab ich gleich mal

              Kommentar


              • #22
                So leider nichts interessantes gefunden jedoch bisschen was überlegt:

                PHP-Code:

                <?
                $file = "";

                if (!$site) {$file = "willkommen.php";}
                if ($site == "test") $file = "test.php";
                if ($site == "test1") $file = "test1.php";
                if ($site == "test2") $file = "test2.php";

                if(file_exists($site) == false){$site = "error.php";}


                ?>
                nun oben wieder die definitionen der seiten...
                nun ein problem also bei dem link zur test3.php die es ja nicht gibt kommt richtigerweise die error.php do wie es sein soll nur eben leider wenn ich auf root bin ebenso.....was läuft da falsch plz?!

                Kommentar


                • #23
                  Mach einfach statt

                  if(!$site)

                  if(empty($site))

                  PS:
                  was soll eigendlich das $file = ""????

                  PPS:
                  Und verwende lieber $_GET['site'];

                  PPPS:
                  Schau dir mal unter den "Kontrollstrkukturen" "switch" an
                  Zuletzt geändert von Tartax; 08.05.2004, 23:01.
                  Die Musikreview Seite

                  hi, i'm a signature virus. copy me into your signature to help me spread.

                  Kommentar


                  • #24
                    if(empty($site))

                    hab ich trotzdem auf root noch die error.php ausgabe..

                    Kommentar


                    • #25
                      wenn du schon eine derartige Sicherheitslücke bastelst dann prüfe vorab ob die File auch existiert

                      aha hast du schon nur file_exists($site); und file_exists($file); das mal genau überlegen....

                      Und arbeite mit $_GET und $_POST.....
                      als auch mit Switch zur Übersicht.....

                      Und bei $site: nimm am besten ein Codewort und verschlüssele es mit md5. Soll ja nicht jeder wissen.....

                      @Tartax: Würde er wahllos irgendwas includieren, könnte das auch jeder.
                      [color=blue]MfG Payne_of_Death[/color]

                      [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
                      [color=red]Merke:[/color]
                      [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

                      Murphy`s Importanst LAWS
                      Jede Lösung bringt nur neue Probleme
                      Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
                      In jedem kleinen Problem steckt ein großes, das gern raus moechte.

                      Kommentar


                      • #26
                        Ruf die seite mal lieber entsprechend auf!!!

                        Kommentar


                        • #27
                          ich würde das einfach so machen:

                          PHP-Code:
                          <?
                          $id = "";
                          switch($_GET['id']){
                          case "page1": include("page1.php"); break;
                          case "page2": include("page2.php"); break;
                          default: include("empty.html"); break;
                          }
                          ?>
                          Kexx

                          Kommentar


                          • #28
                            wird bei ihm auch nicht laufen, wenn er die seite falsch aufruft

                            Kommentar


                            • #29
                              hmm ich such ja schon hehe finds aber nich... und du hast recht läuft nicht...

                              Kommentar


                              • #30
                                ich geh kaputt!

                                Kommentar

                                Lädt...
                                X