0

データベースから情報を入力する新しいモジュールを作成しました。この情報はグリッド内に表示されます。特定のレコードをクリックすると、ライト ポップアップが表示されます。新しい PHP ファイル (showdetails.php) がライト ボックスに割り当てられます。

<td><a class="modal" href="showdetails.php" rel="{handler: 'iframe', size: {x: 680, y: 370}}" >POPUP</a></td>

ポップアップは正常に動作しています。しかし、ポップアップ内で、「 Not Found 」エラーが発生しません。

ポップアップまたは外部ファイルへのアクセスについて従うべき規則は何ですか。

showdetails.php には以下のコードが含まれています

defined('_JEXEC') または死ぬ; echo "Hello world";

4

1 に答える 1

3

showdetails.phpファイルが Joomla フレームワークを使用してロードされていない場合、定数は_JEXEC定義されておらず、スクリプトはdie.

したがって、使用せずdefined('_JEXEC') or die;に再試行してください。

それでも失敗する場合は、ファイルを正しく参照してください。

編集:あなたのコメントによると、ここでより大きな問題が発生したと思います。内で Joomla 関数を使用する場合showdetails.phpは、最初に Joomla フレームワーク全体を初期化する必要があります。そうしないと、db などを使用できなくなります。通常、このようなポップアップは、のような URL を使用してコンポーネント ビューをロードしますindex.php?option=com_mycomponent&view=myview&layout=popup&tmpl=component。このようにして Joomla フレームワークがロードされ、各 Joomla 関数にアクセスできます。基本的に Joomla 内では、スタンドアロン ファイルを直接ロードして出力することはありません。すべてが index.php を通過し、そこからロードされます。

于 2013-06-14T05:55:15.907 に答える