Problem mit relativen Link

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

  • Problem mit relativen Link

    Halli Hallo,

    ich habe mal wieder eine doof frage! Ich habe mir kürzlich eine Art config Datei für meine Homepage gebaut in der ich alle statischen "Werte" sie für die ganze Seite gelten konfiguriere!

    Nun bin ich auch auch auf die Idee gekommen das ich doch auch meine CSS Datei mit einem relativen Link einpflegen könnte! Allerdings kann und möchte ich nicht von einer CSS Datei abgehen da ich z.B. aus unserem Forum und ähnlichen Dinge darauf zugreife! Doppelten Pflege aufwand möchte ich natürlich auch nicht betreiben, deshalb stehe ich vor einem Problem. An sich ist das ja alles nicht so schwer, nur arbeite ich nicht mit absoluten Links und möchte auch eigentlich nicht dazu übergehen, deshalb kann ich z.B. nicht einfach einen Verweis im HTML Code auf ein festes Verzeichniss mit der CSS Datei machen, da spätestens bei tieferen Verzeichnissebenen der Link nicht mehr stimmen würde!

    Deswegen wollte ich fragen ob es eine Möglichkeit gibt die CSS Datei in diese PHP Konfig Datei zu includen oder gibt es eine Möglichkeit per HTML einen relativen Link einzufügen der automatisch im root Verzeichniss des Servers beginnt?!

    Auf einem PC gibt es den cd\ befehl der mich automatisch in die root des Laufwerks bringt. Sowas bräuchte ich per HTML um dann von dort aus den relativen Link zu legen!

    Hoffe ihr versteht überhaupt was ich will, denn ich merke das es mir selbst schwer fällt das Problem richtig zu schildern! Ich weiß zwar was ich möchte kann es aber nicht richtig in Worte fassen, hoffe aber trotzdem ihr versteht zumindest halbwegs!

    Liebe Grüße

    Gandalf

  • #2
    Re: Problem mit relativen Link

    Original geschrieben von Gandalf_the_Grey
    Deswegen wollte ich fragen ob es eine Möglichkeit gibt die CSS Datei in diese PHP Konfig Datei zu includen oder gibt es eine Möglichkeit per HTML einen relativen Link einzufügen der automatisch im root Verzeichniss des Servers beginnt?!
    So ganz habe ich dich glaube ich noch nicht verstanden.
    Die CSS-Datei kannst du ganz normal über einen relativen Link in der HTML-Datei angeben.
    Z.B.:
    Code:
    <link rel="../../stylesheet" href="styles.css" type="text/css">
    oder
    <link rel="includes/stylesheet" href="styles.css" type="text/css">
    Oder soll die CSS-Datei ausserhalb des Document-Root liegen? Was IMHO keinen besonderen Sinn macht.
    if ($getraenk=="kein kaffee mehr da" && $verlangen=="gross") { $arbeitsmoral="im keller"; }

    Kommentar


    • #3
      Ich möchte diesen Link aber nicht in JEDER Datei NEU angeben, denn wenn ich was ändere habe ich unnötig Änderungsarbeit in ohne Probleme 100 Seiten, deshalb habe ich mir eine ZENTRALE Datei aufgebaut dir mir den gesamten "KOPFBEREICH" der HTML Datei nachbildet. Diese Datei wird dann per Include in jede Seite eingebunden, so das wenn ich (ähnlich dem Prinzip einer CSS Datei) in der "Konfig" Datei etwas ändere sich dies auf die GANZEN Seiten auswirkt! Wenn ich nun aber per HTML in der "Konfig" Datei einen relativen Link auf die CSS Datei setze (DIESE SOLL AUCH NICHT IN DIE KONFIG DATEI EINGEBUNDEN WERDEN) dann wird dieser logischwerweise auch für jede Datei gleich sein. Was für mich das Problem birgt das ich unterschiedliche Verzeichnisstiefen habe. Deswegen muss der Link auf die CSS Datei zwar RELATIV ABER VARIABEL sein, oder es müsste die Möglichkeit geben die CSS Datei in die Konfig Datei zu INCLUDEN so das die Konfig Datei als Referenz für die CSS gilt, diese sich aber wiederum die Informationen aus der CSS Datei holt!

      Hoffe es ist jetzt verständlicher!

      Kommentar


      • #4
        hallo,

        frage nicht ganz verstanden:
        gibst du den kopf deiner html seiten mit einem echo aus?
        wissen ist macht; und ich bin dumm

        Kommentar


        • #5
          Richtig, ich gebe zumindest Teile meines Kopfes per Echo aus! Habe sie in der Konfig Datei in eine Variable gepackt die ich per Echo in der Zieldatei ausgebe! Mag nicht sonderlich schön sein und ellegant aber es reicht für meine Zwecke aus und Funktioniert!

          Kommentar


          • #6
            Das sollte Dir weiterhelfen:
            PHP-Code:
            $_SERVER['DOCUMENT_ROOT'
            enthält die absolute Verzeichnisangabe zum Root, definiert in der Server-Konfiguration.

            Kommentar


            • #7
              dann ists ja fast gelöst:

              warum denn nid die .css in den kopfbereich der html datei reinschreiben, indem du sie in die bereits bestehende varible einfügst.
              wissen ist macht; und ich bin dumm

              Kommentar


              • #8
                Weil er die Konfigdatei aus unterschiedlichen Verzeichnisstufen heraus aufruft und beim include gilt der Pfad immer relativ zum Scriptpfad.

                Kommentar


                • #9
                  @DSB hey du bist klasse, jetzt kann ich mal wieder loslegen und mir was zusammen basteln!

                  @all

                  Danke für eure Hilfe

                  @kennyshell

                  Weil ich damit wieder in 2 Dateien die GLEICHEN Änderungen vornehmen müsste! Die CSS Datei brauche ich noch ZWINGEND für Fremd Scripte, und ich habe keine Lust ein und die selbe "CSS" zwei mal zu pflegen!

                  Kommentar


                  • #10
                    Original geschrieben von Gandalf_the_Grey
                    Ich möchte diesen Link aber nicht in JEDER Datei NEU angeben, denn wenn ich was ändere habe ich unnötig Änderungsarbeit in ohne Probleme 100 Seiten, deshalb habe ich mir eine ZENTRALE Datei aufgebaut dir mir den gesamten "KOPFBEREICH" der HTML Datei nachbildet.

                    Hoffe es ist jetzt verständlicher!
                    mhh haste jetzt eine header datei erstellt die in jeder datei includet wird oder hast du variablen in jeder datei gesetzt die mit den angaben deiner config ausgefüllt werden?

                    glaube einfacher ist es eine Header.php oder ähnlich anzulegen und diese in all den anderen Dateien zu includen.
                    mfg
                    marc75

                    <Platz für anderes>

                    Kommentar


                    • #11
                      Wärs dann aber nicht mit einem absoluten Link vielleicht sinnvoller und unproblematischer? Warum mehr Arbeit machen, wenn ich das ganze mit einem absoluten Link umgehen kann.
                      Und den absoluten Link kann ich entweder in der config-Datei oder in der HTML-Datei angeben.
                      if ($getraenk=="kein kaffee mehr da" && $verlangen=="gross") { $arbeitsmoral="im keller"; }

                      Kommentar


                      • #12
                        Das Thema ist zwar mittlerweile durch (siehe oben) aber nochmal:

                        Ich habe eine Config Datei in der ich wiederum 2 Variablen deklariert habe!

                        eine Variable HEADER (die den Kopfbereich enthält)
                        und eine Variable FOOTER (die den Fußbereich enthält)

                        Diese Config Datei wird in JEDE meiner anzuzegenden seiten INCLUDED und dann rufe ich im Kopf einmal die HEADER Variable auf und im Fußbereich die FOOTER Variable! FERTIG!

                        Kommentar


                        • #13
                          Ich MÖCHTE aber keinen ABSOLUTEN Link, weil ich z.B. auf einigen Testsystemen KEINEN Internetzugang habe und dort trotzdem testen möchte, und ich habe keine Lust ständig LINKS anzupassen! deswegen!

                          Kommentar


                          • #14
                            Und mit Document_Root kann er sich einen relativen Pfad absolut leicht basteln. Der Ergebnispfad ist dann relativ absolut!

                            Kommentar


                            • #15
                              *gg* Also genau so starr wie nötig und so flexibel wie möglich! Sprich genau das was Ich wollte! Perfekt! Danke nochmal an alle die sich hier mit den Kopf zerbrochen haben. Weiß zwar noch nicht wie ich jetzt mit diesem Ansatz weiter Scripte aber das ist denke ich das geringste Problem. Hat wenigstens den Vorteil das ich wieder etwas in PHP gelernt habe und lernen werde!

                              Kommentar

                              Lädt...
                              X