Ankündigung

Einklappen
Keine Ankündigung bisher.

Verzeichnisstruktur Zugriff mit include

Einklappen

Neue Werbung 2019

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

  • auerp
    hat ein Thema erstellt Verzeichnisstruktur Zugriff mit include.

    Verzeichnisstruktur Zugriff mit include

    Hallo Zusammen,

    vllt. kan mir einer von euch helfen. Leider bekomme ich keinen Zugriff auf die Datei und deren verzeichnis welches ich jetzt kurz schildern werden.


    focusedhealth
    - fitbit
    --food plan
    ---insert (Datei: insert_food_plan.php)
    PHP-Code:
    include '../../id/find_calories_id.php';
    include 
    '../../id/find_period_daily_id.php'
    focusedhealth
    - fitbit
    --id (Datei1: find_calories_id.php; Datei2: find_period_daily_id.php)

    Meine Annahme müsste doch eigenltich korrekt sein das ich 2 mal ".." nutze um die Ebenen nach oben zu gehen und dann id, damit ich eine Ebene tiefer und somit auch die Dateien aufrufen kann?!

    VG
    auerp

  • mermshaus
    antwortet
    Zitat von auerp Beitrag anzeigen
    Das Problem ist, dass er bestimmte Werte nicht in die Datenbank schreibt und dort dann eine 0 steht, statt dem erwarteten Wert.

    Werden die Dateien nicht aus dem ordner id aufgerufen sondern direkt im Ordner insert abgelegt und von dort aus aufgerufen schreibt er auch die erwarteten Werte in die Datenbank.
    Na ja, dann scheint es ja nicht unbedingt an den Include-Pfaden zu liegen?

    Müsste man im Zweifel den entsprechenden Code sehen.

    Versuch es aber mal mit Debugging:

    - http://phpforum.de/forum/showthread.php?t=216988
    - http://php-de.github.io/#debugging

    Zitat von moma
    meinst du sowas wie http://example.com/proc/cpuinfo sollte man mal testen ?
    Verstehe nicht, was du hier meinst.

    //OT: dein strike ist echt schwer zu lesen..
    Das war halt wahrscheinlich Unsinn, dass es noch einen weiteren Bezugspunkt/Ankerpunkt für relative Pfade gibt, wenn mit working directory als Bezugspunkt nichts gefunden wird. Bei Includes mit Pfaden, die nicht relativ und nicht absolut sind (zum Beispiel include 'foo.php';), sucht PHP „am Ende“ noch mal vom Verzeichnis der Datei ausgehend, in der die Include-Zeile steht, nach einer Entsprechung im Dateisystem.

    Zitat von SebTM
    Und ja, ich glaube (bin mir nicht 100% sicher) das wenn der Aufruf "meineseite.de/test.php" heißt und diese in "/var/www/vhosts/meineseite.de/" liegt das das auch das Arbeitsverzeichnis ist. Damit müsste er den Pfad von dort aus angeben.
    Das ist in jedem Fall so, wie es „normalerweise“ funktioniert. Ich glaube aber, das ist mehr übliche Konvention. Eine Notwendigkeit, das Arbeitsverzeichnis so zu setzen, sehe ich nicht.

    Ich rate immer dazu, solche Pfade im Code mit __DIR__ „zu verankern“. Dann hat man es verlässlich vom Verzeichnis der Skriptdatei ausgehend, und unter anderem das Arbeitsverzeichnis ist egal.

    - http://www.ermshaus.org/2012/09/php-...emals-ohne-dir

    Einen Kommentar schreiben:


  • SebTM
    antwortet
    @moma: Das was du zitierst war von mir und ich bin nicht TE

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von mermshaus Beitrag anzeigen
    Ich habe es allerdings noch nicht erlebt, dass das Arbeitsverzeichnis bei Aufruf über den Webserver (also mehr oder weniger per HTTP) nicht dem Verzeichnis entspricht, in dem die zuerst aufgerufene PHP-Datei des Requests liegt. Undenkbar ist das aber wahrscheinlich nicht.
    meinst du sowas wie http://example.com/proc/cpuinfo sollte man mal testen ?
    //OT: dein strike ist echt schwer zu lesen..

    @SebTM:
    Ich glaube (bin mir nicht 100% sicher)
    in solchen fällen kann eine konsultaion der logfiles wunder bewirken.

    Einen Kommentar schreiben:


  • auerp
    antwortet
    Das Problem ist, dass er bestimmte Werte nicht in die Datenbank schreibt und dort dann eine 0 steht, statt dem erwarteten Wert.

    Werden die Dateien nicht aus dem ordner id aufgerufen sondern direkt im Ordner insert abgelegt und von dort aus aufgerufen schreibt er auch die erwarteten Werte in die Datenbank.

    Einen Kommentar schreiben:


  • SebTM
    antwortet
    Ich meinte mit Datei das die Datei in welcher er die Includes hat nochmal woanders inklusdiert wird.

    Und ja, ich glaube (bin mir nicht 100% sicher) das wenn der Aufruf "meineseite.de/test.php" heißt und diese in "/var/www/vhosts/meineseite.de/" liegt das das auch das Arbeitsverzeichnis ist. Damit müsste er den Pfad von dort aus angeben.

    Einen Kommentar schreiben:


  • mermshaus
    antwortet
    Weiß nicht genau, was du mit „die Datei“ meinst, aber das Arbeitsverzeichnis ist der <strike>erste</strike> Bezugspunkt für relative Pfadangaben, ja.

    Ich habe es allerdings noch nicht erlebt, dass das Arbeitsverzeichnis bei Aufruf über den Webserver (also mehr oder weniger per HTTP) nicht dem Verzeichnis entspricht, in dem die zuerst aufgerufene PHP-Datei des Requests liegt. Undenkbar ist das aber wahrscheinlich nicht.

    Einen Kommentar schreiben:


  • SebTM
    antwortet
    Hallo,

    lass dir doch zur Sicherheit mal via "getcwd();" das aktuelle Arbeitsverzeichnis ausgeben - je nachdem ob du die Datei auch inkludierst kann das ja unterschiedlich sein glaub ich.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Ich bin ja sicher das hilft:
    http://php-de.github.io/jumpto/pfade/

    Einen Kommentar schreiben:


  • mermshaus
    antwortet
    Wenn ich deine Darstellung der Verzeichnisse korrekt interpretiere, dann scheint der relative Pfad korrekt zu sein, ja.

    Was passiert denn (nicht)? Fehlermeldung? Welche Datei rufst du im Browser auf?

    Einen Kommentar schreiben:

Lädt...
X