kostenloser Webspace werbefrei: lima-city


Dynamische Links, wie genau?

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    limabone

    Kostenloser Webspace von limabone

    limabone hat kostenlosen Webspace.

    Abend liebe Community,
    ich bin gerade auf ein simples, aber schweriegendes Problem beim coden eines CMS Systems gestoßen, nämlich wie kann ich dynamische URLs eingeben, dass ich ein Dokument aus nem order vorher includen kann?
    Bildlich: html/limabone/test/order1/order2/ usw....

    Wie kann ich die Url angeben, um ein File von dem Order "test" in einem File im Order "order2" zu includen? Ich habs bis jetz immer mit
    ../limabone/test/namedesfiles.php versucht, aber ging nicht...
    MfG Limabone
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Was willst du genau machen, das in der URL steht

    deine-domain.de/user/dein_nick/

    oder das du eine Datei die in diesem Ordner liegt includest?

    Das oben genannte (deine-domain.de/user/dein_nick/) geht über mod_rewrite was von Lima-City unterstützt wird
  4. Autor dieses Themas

    limabone

    Kostenloser Webspace von limabone

    limabone hat kostenlosen Webspace.

    ich hab ne Datei, in die ich die zugangsdaten für die datenbanken hab, und die möchte ich auf jeder seite includen, egal wo diese jetzt gerade liegt.
    Anderes Beispiel: html/limabone/cms/includes/
    Die Datei liegt im Order limabone. Wie muss jetzt die URL aussehen, wenn ich bei einer Datei, die im Order inlcudes liegt, diese besagte Datei includen will?

    ETWA
    ../cms/includes/
    oder
    /cms


    EDIT: Bitte helft mir!

    Beitrag zuletzt geändert: 2.11.2009 21:31:41 von limabone
  5. Also ich versteh grad nich ganz was du willst! Wenn du Zugangsdaten für eine Datenbank in eine Datei schreibst, nenn diese Datei einfach config.php

    Ich include dann so:

    <?php include("login/include.php"); ?> <--- in dieser Datei werden alle Datei includet die dann für mein Projekt wichtig sind unter anderem auch die config.php in der die Zugangsdaten für die Datenbank stehen!

    d. h. für deinen Fall würde ich mit /cms anfangen den Link zu schreiben!

    Hoffe ich konnte helfen!
  6. Bei allen PHP-Operationen kannst du durch "/../" einen Ordner höher wechseln, also in deinem Beispiel der Verzeichnisstruktur (ich hab bei "Ordner" mal das "n" mit reingemacht) "html/limabone/test/ordner1/ordner2/" von "ordner2" in "ordner1". Wenn die ausführende Datei also in "ordner1" liegt, und du die in "ordner2" liegende Datei "config.php" includen willst, dann schreibst du
    inlcude('../config.php');
    Wenn in "ordner1" noch ein Ordner "includes" liegt, und sich darin die "config.php" befindet schreibst du
    inlcude('../includes/config.php');


    Bei deinem Beispiel ist der Ordner "test" 2 Ebenen höher, als das Verzeichnis, in dem die ausführende Datei liegt. Die Lösung lautet also:
    inlcude('../../config.php');



    mfg drafed-map

    Beitrag zuletzt geändert: 9.11.2009 13:19:18 von drafed-map
  7. So schwer ist das doch nicht zu verstehen.

    Gegeben ist folgende Ordnerstruktur:

    /
    |_Ebene1/
        |_Ebene2/
             |_Ebene3/
                  |_Ebene4


    der erste (linkr) Slash repräsentiert den root, also die oberste erreichbare Ebene.

    Eine Datei in Ebene3 ist, relativ vom root gesehen erreichbar über den Pfad

    /Ebene1/Ebene2/Ebene3/Ebene4/Datei_in4

    aus dieser Datei kann ich eine Datei in Ebene2 in unterschiedlicher Weise ansprechen.

    1. bezogen auf den root mit /Ebene1/Ebene2/Datei_in2
    2 bezogen auf die Ebene, in der ich mich befinde ../../Datei_in2

    Für die 2. Variante gibt es als Hilfsmittel die DOTS
    wobei ein Dot . die aktuelle Ebene repräsentiert (DateiXY ist also identisch zu ./DateiXY )
    zwei Dots die übergeordnete Ebene


    Limabone, genau da liegt der Fehler in deinem ersten Beispiel.

    Bildlich: html/limabone/test/order1/order2/ usw....

    Wie kann ich die Url angeben, um ein File von dem Order "test" in einem File im Order "order2" zu includen? Ich habs bis jetz immer mit
    ../limabone/test/namedesfiles.php versucht, aber ging nicht...


    Wenn Du dich im Ordner 2 befindest und eine Datei aus Test includen willst, wäre folgende URL korrekt ../../namedesfiles.php, oder /limabone/test/namedesfiles.php


    die URL ../limabone/test/namedesfiles.php verweist hingegen auf html/limabone/test/order1/limabone/test/namedesfiles.php, da Du dich relativ nur eine Ebene hochdottest :wink: und dann zwei, nichtexistente Ebenen hinabsteigst.

    Gerade bei Dateien, die aus verschiedensten Ebenen hheraus aufgerufen werden können, sollten Pfade nie relativ sondern immer vom root ausgehend angegeben werden. Hilfreich stellt php dafür $_SERVER["DOCUMENT_ROOT"] zur Verfügung.

    FF

    Beitrag zuletzt geändert: 9.11.2009 13:27:53 von fatfreddy
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!