2017-03-23 16 views
0

編集:ありがとうございました。私は、FallbackResourceを使用してindex.phpからすべてのページを提供しているので、スクリプトがロードされるたびに_$SERVER['REQUEST_URI']更新します。私はindex.phpによってアクセスされるテキストファイルまたはデータベースエントリにルートフォルダを保存するつもりです。

おかげで再び

私はそれを呼び出すとき、それは更新として$GLOBALS['rooturi'] = $_SERVER['REQUEST_URI']から固定値を取得する方法を疑問に思って。

別のスクリプトに画像を含めるためのルートパスを設定するためにindex.phpに設定しています。問題がある

$GLOBALS['rooturi'] = $_SERVER['REQUEST_URI']; 

を:(\ xamppの\ htdocsに\ FILE1 \ FILE2 \サイト\画像C)URLのバージョンではなく(/ウェブサイト/画像/)私は__DIR__."/images/"を使用して試してみましたが、私は、ファイルシステムの場所を望んでいません別のスクリプトで呼び出すと、新しいスクリプト$_SERVER['REQUEST_URI']が使用されます。 (ウェブサイト/画像/ 3 /画像/ 3)

私は事前

+0

は、あなただけの '$ _SERVER [ 'DOCUMENT_ROOT']' – nogad

+0

ありませんを使用するカント、ファイルシステムのパス(C:\〜\ website)を返して、使用するパスを探しています(http://127.0.0.1/~/website) – George

+0

申し訳ありませんが、間違っていましたが、わかりませんあなたはドメイン名をしたいのですか?相対的な値は、その時点でファイルシステムのどこにあるかによって異なります。あなたが '$ var/file.jpg'を望むなら、解決されたイメージパスを知る必要があります – nogad

答えて

0

のおかげでは、すべてのスクリプトの先頭に含まれていますファイル内のグローバル変数を宣言しFallbackResource index.php

で.htaccessを使用していますが、中に言います設定ファイル

/site 
/site/config.php 
/site/index.php 
/site/subdir 
/site/subdir/anotherfile.php 

例:

config.phpの

<?php 

$cfg = new stdClass(); 
$cfg->rooturi = $_SERVER['HTTP_HOST'].'/siteroot'; 

?> 

のindex.php

<?php 
require_once('config.php'); 

echo $cfg->rooturi; 

function somefunction(){ 
global $cfg; 

echo 'In function '.$cfg->rooturi; 
} 

?> 

サブディレクトリ/ anotherfile.php

<?php 
     require_once('../config.php'); // see '../' to go one level above as this file is in a subdirectory 

     echo $cfg->rooturi; 

     function somefunction(){ 
     global $cfg; 

     echo 'In function '.$cfg->rooturi; 
     } 

    ?> 

..

0

あなたのindex.phpでこれを試すことができます。

$path = str_replace('index.php', '', $_SERVER['PHP_SELF']); 
$baseUrl = 'http://' . $_SERVER['SERVER_NAME'] . $path; 

$GLOBALS['rooturi'] = $baseUrl; 

してから画像をロードするために:

<img src="<?php echo $GLOBALS['rooturi'] ?>/images/something.png" /> 
関連する問題