Ankündigung

Einklappen
Keine Ankündigung bisher.

Wie ist der Code?

Einklappen

Neue Werbung 2019

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

  • Wie ist der Code?

    Hey.
    Ich brauche inen ähnlichen Code wie:

    PHP-Code:
    <?php
    require('name.php');
    ?>
    Nur soll der auf alle Ordner zugreifen.

    Also im Hauptordner ist die index.php,name.php und ein Ordner namens Test.
    In der index.php ist der oben genannte PHP Code.
    In name.php ist z.b.
    <p>Noch 1 Tag</p>

    Im Ordner ist eine Datei namens test.php.
    In dieser Datei ist auch der oben genannte PHP Code.
    Nun zeigt test.php aber nicht an was in name.php ist.

    Wie mache ich das, dass test.php im Ordner Test auf die Datei name.php im normalen Ordner zugreift?

  • #2
    ../
    Competence-Center -> Enjoy the Informatrix
    PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

    Kommentar


    • #3
      Zitat von Arne Drews Beitrag anzeigen
      ../
      Funktioniert irgendwie nicht.
      Also die index.php und meine name.php sind im Hauptordner

      die test.php ist in hauptordner/pages/news/test.php

      wenn du mit ../ das meinst:
      PHP-Code:
      <?php
      require('../name.php');
      ?>

      Kommentar


      • #4
        Also im Hauptordner ist [...] und ein Ordner namens Test.
        die test.php ist in hauptordner/pages/news/test.php
        Du mußt schon sagen, wie Deine Verzeichnisstruktur wirklich ist, sonst wird das nix!
        Hast Du eine Ahnung, was ../ bewirkt? Dann könntest Du drauf kommen, was Du tun mußt.

        Wird die test.php denn direkt aufgerufen?
        Wenn nicht, nutzt Du die $_SERVER-Globale, um an Dein Ziel zu kommen...
        Competence-Center -> Enjoy the Informatrix
        PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

        Kommentar


        • #5
          Wie Arne schon in seiner stehts ausführlichen und effizienten Art und Weise darstellte geht das mit dem upper dir shorthand ( .. ).

          Aus technischer sicht verwendet man diese nur selten alleine ( relativer Pfad zum aktuellen Arbeitsverzeichnis )
          PHP-Code:
          require '../foo.php'
          sondern eher im zusammenspiel mit dem aktuellen Pfad ( relativer Pfad zum aktuellen Verzeichnis )
          PHP-Code:
          require __DIR__'/../foo.php'
          Ich denke es ist angemessen wenn man Empfiehlt weitestgehend auf relative Pfade in zusammenspiel mit dem upper directory shorthand zu verzichten und empfiehlt weitestgehend autoloading zu nutzen ( im genauen Klassen ) und schlussendlich alles über eine Datei laufen lässt, die dann absolut von ihrer position her Pfade auflöst und validiert, statt relative Pfade zu nutzen. Was spätestens bei komplizierteren Konfigurationen Sinn macht.

          Im übrigen ist das prorgammatische Equivalent zum upper directory shorthand [man]dirname[/man]() zumindest im Bezug auf Verzeichnisse:
          PHP-Code:
          require dirname(__DIR__).'/foo.php'
          Pfade können ebendso zu absoluten Pfaden aufgelöst werden. Hier mal als Validierung:
          PHP-Code:
          $shouldBeIncluded '../foo.php';
          $includeThis realpath(__DIR__.DIRECTORY_SEPARATOR.$shouldBeIncluded);

          if ( ! 
          $includeThis ) {
             
          trigger_error(
                
          sprintf(
                   
          'Unavailable file to include `%s`, target file was not found',
                   
          $shouldBeIncluded
                
          ),
                
          E_USER_ERROR
             
          );

             exit(
          1);
          }

          require 
          $includeThis
          [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

          Kommentar


          • #6
            Wenn er nun aber hauptordner/pages/news/test.php direkt aufruft, ist es dann nicht sinniger gleich mit $_SERVER['DOCUMENT_ROOT'] zu arbeiten?

            Wie Arne schon in seiner stehts ausführlichen und effizienten Art und Weise darstellte geht das mit dem upper dir shorthand ( .. ).
            Den Slash habe ich nur rangehängt, weil der Editor nicht weniger als 3 Zeichen zulässt...
            Competence-Center -> Enjoy the Informatrix
            PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

            Kommentar


            • #7
              Zitat von Arne Drews Beitrag anzeigen
              Du mußt schon sagen, wie Deine Verzeichnisstruktur wirklich ist, sonst wird das nix!
              Hast Du eine Ahnung, was ../ bewirkt? Dann könntest Du drauf kommen, was Du tun mußt.

              Wird die test.php denn direkt aufgerufen?
              Wenn nicht, nutzt Du die $_SERVER-Globale, um an Dein Ziel zu kommen...
              Hier ein Bild:

              Kommentar


              • #8
                Joa, die Löungsmöglichkeiten wurden Dir bereits offenbart...
                Competence-Center -> Enjoy the Informatrix
                PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                Kommentar

                Lädt...
                X