nonamed: Stylesheet nicht geladen

Hallo,

Ich hab da ein Problem, welches mich schon einger Zeit nervt.

Ich habe eine php file index.php in welche ich die anderen Pages rein lade. Zb. home.php

Das index.php liegt im Hauptordner, in jenem sich die Directories "css" und "includes" befinden. Wenn ich nun von einem file im "includes" auf das stylesheet in "css" zugreiffen will, dann gaht das irgendwie nicht.
ich weis nun nicht wo der Fehler liegt. Ich befürchte aber, dass das an dem php liegen kann.
Wenn ich es in meinem editor mit dem Verzeichniss <href="../css/stylesheet.css"> lade funktionert das.
Nun werf ich die ganze Sache auf meinen Webspace und siehe da, es funtkioniert nicht mehr.

Kann mir da jemand dabei helfen? Danke schon mal im Vorraus

nonamed

  1. Hello out there!

    Das index.php liegt im Hauptordner, in jenem sich die Directories "css" und "includes" befinden. Wenn ich nun von einem file im "includes" auf das stylesheet in "css" zugreiffen will, dann gaht das irgendwie nicht.

    Aus dem relativen Pfad bastelt der _Client_ den URI zusammen; der Client weiß nichts von Includes. Er bezieht den relativen Pfad auf den der Ressource 'index.php'.

    Danke schon mal im Vorraus

    Ehe Christoph nach der PLZ fragt: Voraus, ein R.

    See ya up the road,
    Gunnar

    --
    „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)
    1. Aus dem relativen Pfad bastelt der _Client_ den URI zusammen; der Client weiß nichts von Includes. Er bezieht den relativen Pfad auf den der Ressource 'index.php'.

      Dachte ich mir auch schon, deswegen hab ich auch <href="css/styles.css"> probiert, doch leider kein Erfolg.

      1. Hello out there!

        Kannst du mal die fraglichen Webseiten verlinken und den (absoluten!) URI des Stylesheets angeben?

        See ya up the road,
        Gunnar

        --
        „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)
      2. Hi!

        Dachte ich mir auch schon, deswegen hab ich auch <href="css/styles.css"> probiert, doch leider kein Erfolg.

        Auch das ist ein relativer Pfad. Je nachdem, in welchem Verzeichnis deine Files liegen, kann das nicht funktionieren.
        Du könntest einen absoluten Pfad setzen:
        <link rel="stylesheet" type="text/css" href="http://deineSeite.de/css/styles.css">
        oder:
        <link rel="stylesheet" type="text/css" href="<?= $_SERVER['DOCUMENT_ROOT'] ?>/wasAuchImmer/css/styles.css">

        Im Übrigen kann dein Beispiel ohnehin so nicht funktionieren.
        Ich schätze aber mal, daß es sich hier nur um einen kleinen Tippfehler im Forum handelt, oder?
        Wie man eine CSS-Datei richtig einbindet ist dir vermutlich klar?
        Statt <href="css/styles.css"> müßte es <link rel="stylesheet" type="text/css" href="css/styles.css"> heißen.

        Schöner Gruß,
        rob

        1. Hello out there!

          <link rel="stylesheet" type="text/css" href="http://deineSeite.de/css/styles.css">

          <Gebetsmühle>Verwende für Beispieldomains example.com, example.net, example.org oder auch foo.example, foo.invalid. [RFC2606] NIE Namen angeben, die wirklich existieren können! (Man weiß nie, was sich für Inhalt dahinter verbirgt.)</Gebetsmühle>

          <link rel="stylesheet" type="text/css" href="<?= $_SERVER['DOCUMENT_ROOT'] ?>/wasAuchImmer/css/styles.css">

          Nur bei entsprechender Serverkonfiguration (short_open_tags). Und nicht zu empfehlen.

          See ya up the road,
          Gunnar

          --
          „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)
          1. Hi!

            <link rel="stylesheet" type="text/css" href="<?= $_SERVER['DOCUMENT_ROOT'] ?>/wasAuchImmer/css/styles.css">
            Nur bei entsprechender Serverkonfiguration (short_open_tags). Und nicht zu empfehlen.

            Ja, das stimmt.
            So:
            <link rel="stylesheet" type="text/css" href="<?php echo $_SERVER['DOCUMENT_ROOT']; ?>/wasAuchImmer/css/styles.css">
            ist man auf der sicheren Seite.

            In der Standardkonfiguration von PHP (beiliegende, unveränderte php.ini) funktioniert das mit der Kurzfassung.
            Man kann sich aber nicht drauf verlassen, daß dies bei jedem Hoster funktioniert.
            Man sollte seine Scripte immer so programmieren, daß sie möglichst überall laufen, ohne auf eine bestimmte PHP-Konfiguration angewiesen zu sein.
            Ich selbst nutze daher auch immer die "lange Version", wenn ich Scripte für den tatsächlichen Einsatz im Web schreibe.
            Wenn ich aber zum Test - auf meinem lokal installierten Server - schnell mal eine Variable ausgeben will, dann nutze ich die Kurzfassung mit <?=.

            Gut, daß du hier drauf hingewiesen hast.

            Schöner Gruß,
            rob

            1. hi,

              So:
              <link rel="stylesheet" type="text/css" href="<?php echo $_SERVER['DOCUMENT_ROOT']; ?>/wasAuchImmer/css/styles.css">
              ist man auf der sicheren Seite.

              Nein, ist man nicht - weil DOCUMENT_ROOT iaR. einen Pfad relativ zum Server-Root enthält. Der dürfte aber selten mit dem Web Root übereinstimmen, sprich ein Zugriff darauf per HTTP gar nicht möglich sein.

              gruß,
              wahsaga

              --
              /voodoo.css:
              #GeorgeWBush { position:absolute; bottom:-6ft; }
              1. Nein, ist man nicht - weil DOCUMENT_ROOT iaR. einen Pfad relativ zum Server-Root enthält.

                Hier schreibst du selbst was anderes:
                http://forum.de.selfhtml.org/archiv/2006/9/t136085/
                DOCUMENT_ROOT enthält in der Regel einen absoluten Pfad; und auf meinem Server ist's der Fall.

                1. Hallo Cammy.

                  Nein, ist man nicht - weil DOCUMENT_ROOT iaR. einen Pfad relativ zum Server-Root enthält.
                  Hier schreibst du selbst was anderes:
                  http://forum.de.selfhtml.org/archiv/2006/9/t136085/#m883583

                  Nö, tut er nicht. Hier schreibt er, dass der DOCUMENT_ROOT immer relativ zum Wurzelverzeichnis des Servers (also „/“) und keinem anderen Verzeichnis ist. Dort schrieb er, dass DOCUMENT_ROOT für sich absolut ist, was ja ebenso stimmt.

                  DOCUMENT_ROOT enthält in der Regel einen absoluten Pfad; und auf meinem Server ist's der Fall.

                  Eben.

                  Einen schönen Dienstag noch.

                  Gruß, Mathias

                  --
                  ie:% fl:| br:< va:) ls:& fo:) rl:( n4:~ ss:) de:] js:| mo:| zu:)
                  debian/rules