0

私はstackoverflowと他のいくつかのサイトを検索し、新しいコードの組み合わせを数時間試しましたが、あきらめました..私は2つのphpファイルを持っています.1つはgetimages.phpと呼ばれ、もう1つはmod_slidepluslight.phpと呼ばれます。 CMSとしてライトボックスでスライドショーモジュールを作成したので、.xmlファイルに設定されたモジュールパラメーターを介してJoomla内のフォルダーから画像を取得したいと考えています。私はこのコードを使用してこれを行いました:

$imagePath = $params->get('imagePath', 'banners');

この変数を宣言してコードで使用しようとしても、何もしません。

function returnimages($relPath = "/KVD/images/") { 
$dirname = $_SERVER['DOCUMENT_ROOT'] . $relPath . $imagePath; 

$imagePath は、/KVD/images/......./ の後、または現在の場所に追加する必要があります。getimages.php のコード全体は次のようになります。

Header("content-type: application/x-javascript");

$imagePath = $params->get('imagePath', 'banners/');

function returnimages($relPath = "/KVD/images/") { 
$dirname = $_SERVER['DOCUMENT_ROOT'] . $relPath . $imagePath; 
$files = array(); 
$curimage = 0; 
if($handle = opendir($dirname)) { 
while(false !== ($file = readdir($handle))){ 
if (preg_match('/\.(jpg|jpeg|gif|png)$/', $file)){ 
print_r ('galleryarray['.$curimage.']="'. $relPath . $file .'";'); 
$curimage++; 
} 
} 

closedir($handle); 
} 
return($files); 
} 

print 'var galleryarray=new Array();'; //Define array in JavaScript 
returnimages() //Output the array elements containing the image file names

ありがとう、コーエン。

4

3 に答える 3

0

別のアプローチを検討する必要があります。別のスクリプトを利用するモジュールを作成する場合、この別のスクリプトはヘルパーである必要があります。

見て:

http://docs.joomla.org/Creating_a_Hello_World_Module_for_Joomla_1.5

上記のリンクで説明されているように、getimages.php のコンテンツをヘルパーとして使用できるようにすると、そのスクリプトでパラメーターを利用できるようになります。

于 2012-04-15T20:16:19.177 に答える
0

関数内で $imagePath を呼び出しますが、$imagePath は関数のスコープ外です! $imagePath をパラメーターとして関数に送信できます

于 2012-04-12T16:02:37.437 に答える
0

変数のスコープに注意してreturnimages()ください。グローバル化するか、関数を介して渡すまで、関数は $imagePath 変数にアクセスできません。

関数コードの先頭に追加するだけです:

global $imagePath;
于 2012-04-12T16:04:42.160 に答える