2012-01-30 7 views
2

私はテストモジュール名Mytestを作成しました。モジュールから値を保存している間に、空白のページが表示され、「Sorry!制限付きファイルにアクセスしようとしています」と表示されます。誰が知っている、なぜこれが起こっている。これに関する助けは本当に感謝しています。Vtigerカスタムモジュール:「申し訳ありません!制限付きファイルにアクセスしようとしています。

答えて

4

Save.phpファイルでは、行を追加するだけです。

if($_REQUEST['assigntype'] == 'U') { 
$focus->column_fields['assigned_user_id'] = $_REQUEST['assigned_user_id']; 
} elseif($_REQUEST['assigntype'] == 'T') { 
$focus->column_fields['assigned_user_id'] = $_REQUEST['assigned_group_id']; 
} 
3

参照しようとしているファイルのアクセス許可とファイルパスを確認してください。

さらにデバッグする場合は、インデックスファイルで$ adb-> setDebug(true)を設定し、エラーをチェックアウトします。

+0

システムで有効になっています。致命的なエラーは表示されません。 –

+0

utils/CommonUtils.phpでこれらの関数checkFileAccessForInclusion、checkFileAccessをデバッグしてください。 –

+0

問題はそこにあり、常にfalseを返し、「Sorry!制限付きファイルにアクセスしようとしました」と表示されます。機能 –

4

$focus->column_fields['assigned_user_id'] = ''; 

秒に言っcaspersky:

ゴー/include/database/PearDatabase.phpに、私はちょうど、モジュールを書いて、このエラーを受け取った右$adb->connect();

$adb->setDebug(true);を追加し、レコードを保存できなかったのは、私が脱退したためです: $moduleInstance->setEntityIdentifier($fieldInstance);

5

カスタムモジュールからファイルをインクルードしようとすると、これらのファイルはVtigerが安全ではない場所からインクルードしていると考えられるため、これらのメッセージが表示されます。

このエラーを回避するには、Vtigerでモジュールを使用する標準的な方法(......./index.php?module=Mytest&action=indexのように)を使用します。 Vtigerにはモジュールが含まれており、今度はCRMEntityと他のdataまたはutilsという関連ファイルを含める必要はありません。これはすべてこの方法で利用できるはずですが、$current_user$current_moduleなどについてはglobalステートメントを使用していることを確認してください。それを修正するために、これらの関数でdie()を削除するか、コメントアウト

heckFileAccessForInclusion()checkFileAccess()

もう一つの方法は、utils/CommonUtils.phpにある以下の機能を編集することです。

2

Smartyフォルダの書き込み権限を設定していないようです。

2

すべての言語ファイルが存在することを確認してください。

ユーザーモジュールを使用すると、言語ファイルがディスクに存在しなくてもユーザーの言語を構成できます。

- - include/utils/CommonUtils.phpを編集し、$ realfilepath変数を出力し、die();をコメントアウトしてください。 - データベースでは、「xxx_usersから個別言語を選択してください。

必要なファイルをダウンロードして修正できます。クイックフィックスとして

(読み:ハック): - - 含める/ languageディレクトリ に行く - 必要なものとして、既存の言語ファイルをコピーします。(常に動作しない場合があります - 例えば表すen_GBするen_USのは素晴らしいですが、sp_esにはen_USではありません)

3

物事のカップルは、心に春:

  1. あなたが実際にモジュール/ CustomeModuleディレクトリを作成してあり人口は 人口ですか? (vtlib/ModuleDir/5.4.0のテンプレートを使用して、 ファイル名とCustomeModule.phpのクラスを編集する)

  2. あなたのモジュールクラス定義の大文字小文字をチェックしてください。クラスCustomeModule 対クラスCustomemodule

  3. あなたのモジュール/ MYTESTコードの開発 内の任意のバージョン管理やシンボリックリンクを使用している場合、これは「申し訳ありません!制限されたファイルにアクセスするために を試みを。」トリガすることができますメッセージ。

  4. モジュール設定スクリプトで、この行が追加されていることを確認してください。

$ module-> initTables(); $ module-> initWebservice();

0

vtigerのインストールでファイルが見つかりませんでした。

どのファイルがミッションであるかを調べるには、include/utils/CommonUtils.phpファイルを編集する必要があります。 、テキストエディタで開き、ライン2755の周りに行くと、これは1が欠落しているファイルで、画面上で印刷し、次の

echo “REAL: $realfilepath, ROOT: $rootdirpath”;

死ぬ前

(申し訳ありませんが....)

を追加します。

6

vTigerエラーの原因としては、「Sorry!制限されたファイルにアクセスしようとしました。 "は、 'config.inc.php'の$ root_directoryの値が正しくないかスペルが間違っています。それは以下の手順に従って補正するために

Go to your vTigerCRM directory 
Open “config.inc.php” with your favorite text editor 
Go to line 86 and adjust $root_directory value to correct vTiger 
directory. Note, that the directory must end with /. It should look 
something like this – $root_directory = ‘/var/www/vtigercrm/’; 

はまた、キャッシュメモリに問題があります。したがって、キャッシュファイルでテンプレートファイルを確認してください。そのためにはvTigerCRMディレクトリに移動してください。 次にSmarty-> templates_cに移動します。

キャッシュファイルのリストが表示されます。このファイルを削除し、問題が解決されたかどうかを確認してください。

このファイルの削除は心配しないでください。

+1

ちょうど私がしたい – pratik

関連する問題