2010-12-06 4 views
1

Angenommen, ich habe eine Datei "test.db" unter www.myhosting.com/data/test.db. Ich muss diese Datei von www.myhosting.com/inc/functions.php verweisenWie kann ich das Hosting-Root korrekt referenzieren?

Was wäre der richtige Weg, um die Datei zu verweisen?

$filename = '../data/test.db'; 

ist nicht sachgemäße weil www.myhosting.com/index.php versuchen würde, auf ein nicht existentes Elternverzeichnis gehen ../data

Antwort

1

erstellen (wenn Sie noch nicht über eine einzigen) config.php Datei, wo Sie absolute Pfad zu Ihrem root definieren und es in jedes Skript aufnehmen. Danach - verwenden Sie diese Konstante, um den Pfad zu erstellen.

Ie:

$filename = ROOT_PATH . '/data/test.db'; 
+0

Eine einfache Möglichkeit, dies zu tun, was Sie immer noch Dinge bewegen können, ohne dass Sie zu bearbeiten config ist 'define ('ROOT_PATH', dirname (__ FILE __));' wenn sich Ihre Konfiguration im root befindet. Sie können dann in ein Unterverzeichnis wechseln, ohne die Dinge zu ändern. –

+0

also wenn ich richtig verstanden habe, muss ich config.php unter dem root erstellen und in dieser Datei put define ('ROOT_PATH', dirname (__ FILE__)); dann in inc/functions.php put $ filename = ROOT_PATH. '/data/test.db'; ? – zafrada

+0

@El Yobo: ja. Ich habe nur den wichtigsten Hinweis gegeben, wie das Problem gelöst werden kann. Ich glaube immer noch, dass die nicht-fertige Antwort besser ist, weil sie dem Benutzer erlaubt, sich selbst zu denken ;-) – zerkms

1

Erster Weg:

$filename = $_SERVER['DOCUMENT_ROOT'] . '/data/test.db'; 

Zweitens:

$filename = getcwd() . '../data/test.db'; 
Verwandte Themen