Ankündigung

Einklappen
Keine Ankündigung bisher.

$_GET - Includelink überprüfen

Einklappen

Neue Werbung 2019

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

  • $_GET - Includelink überprüfen

    Hi zusammen
    Kann mir vielleicht jemand sagen, wie ich ein Überprüfungsscript hier
    Code:
    if(isset($_GET['page']))
    {
     include($_GET['page']);
    }
    einbaue, das die Links nach Eintrag überprüft?

    Zum Beispiel: Der/Das Script soll überprüfen, ob es z.B. index.php?page=seite.php anzeigen soll oder eine Fehlermeldung ausgibt.

    Wäre nett, wenn mir jemand ein Beispiel in einbauen könnte

  • #2
    Wieso machste es nicht mit einem Switch?

    Code:
    <?php
    
        switch($_GET['page']) 
        {
            case 'news':
                include('news.php'); 
                break;
            default: 
                include('default.php');
                break;
        }
    
    ?>
    http://www.php.net/switch

    Kommentar


    • #3
      Zitat von maxi
      Wieso machste es nicht mit einem Switch?
      Dann hätte man auch keine grobe Sicherheitslücke eingebaut...
      mod = master of disaster

      Kommentar


      • #4
        Danke, klappt supper. Bin da einfach nicht drauf gekommen *schäm*

        Dann hätte man auch keine grobe Sicherheitslücke eingebaut...
        Huh? Eigentlich wollte ich damit verhindern, dass irgendwelche Leute meinen Server missbrauchen, um mit deren Scripts rumzuspielen.

        Kommentar


        • #5
          also mit include kann man doch nur dateien auf dem eigenen server einfügen, also wäre das gar keine grobe sicherheitslücke.

          Kommentar


          • #6
            Wie kommt ihr bitte schn auf eine Sicherheitslücke?

            Mit $_GET könnt ihr den bestimmten Wert aus einer URL holen. Jedoch kann nur das Script, welches auf dem Server ist und auch angesprochen! wird mit $_GET was anfangen...

            Von daher verstehe ich euch mit eurer "Sicherheitslücke" nicht....

            Kommentar


            • #7
              weil ich in die url auch ?page=../sonstwas (zb. passwort.txt) eingeben kann...
              und es auch ausgefüht (bzw) aufgerufen werden würde

              wir sprachen hier von diesem beispiel:
              Code:
              if(isset($_GET['page']))
              {
               include($_GET['page']);
              }
              oder auch sowas ist eine grobe sicherheitslücke:
              Code:
              if(isset($_GET['page']) && file_exists($_GET['page'])
                 include($_GET['page']);

              Kommentar


              • #8
                genau das wird doch mit dem SWITCH umgangen. Da werden doch nur die Seiten aufgerufen die ich definiere bzw. die des default- Wertes.

                Kommentar


                • #9
                  Ja ach....

                  Hinweis:
                  Speicher nie ein passwort in einer .txt datei ab
                  und wenn dann aber bitte so:
                  $passwort_fuer_datei = md5($passwort);

                  http://de2.php.net/md5


                  Der switch ist ganz einfach.. mach das doch einfach so..

                  Kommentar


                  • #10
                    ja richtig. aber wenn du sagen wir mal mehr als 10 seiten hast... wird es ganz schön umständlich per switsh.. dann kommt nur noch ein array in frage.

                    Code:
                    <?php
                    // url = http://www.domain.de/index.php?page=1
                    
                    $_links = array(0 => 'sonst.php', 
                                           1 => 'etws.php', 
                                           16 => 'error.php');
                    
                    $id = (isset($_GET['page'])) ? (int)$_GET['page'] : 0;
                    
                    if(!array_key_exists($id, $_links))
                        $id =16;
                    
                    include($_links[$id]);
                    
                    ?>
                    so inetwa. der vorteil ist, dass ich das array bequem aus einer datenbank befüllen kann.

                    hinweis^^ es war ein beispiel^^

                    Kommentar


                    • #11
                      Ich mach das mit ID's oder Kategorien und zeihe mir den Inhalt dann aus der Datenbank....

                      so ungefähr hier:
                      Code:
                      .... WHERE id = '$id_to' or user = '$id_to'";

                      Kommentar


                      • #12
                        *edit*
                        Beitrag vor einigen Stunden geschrieben und dann weg gegangen...

                        Kommentar

                        Lädt...
                        X