2013-12-12 52 views
0

我得到以下錯誤: 警告:require_once(/libraries/recaptchalib.php):未能打開流:在EVAL沒有這樣的文件或目錄()( /home3/quikappd/public_html/rulpon/modules/php/php.module(80):eval()'d代碼)的第3行。Drupal的:有什麼不對我BASE_PATH我的庫文件夾

在drupal 6我試圖添加captcha到一箇舊的內容類型,它有一個內置的php html表單。我將captchalib文件添加到我的drupal實例中的庫文件夾中,但我不斷收到上面提到的錯誤消息。我已嘗試dirname,base_path和各種其他網址以進入該文件夾。我做錯了什麼?

這是我有什麼BASE_PATH -> require_once(base_path().'libraries/recaptchalib.php'); 那麼這對於目錄名稱-> require_once (dirname(__FILE__) . '/libraries/recaptchalib.php'); 然後就直網址-> //require_once('decon.com/sites/all/libraries/recaptchalib.php');

回答

0

根據base_path() doc,它返回一個URL段。例如,如果drupal網站的主頁位於http://www.example.com/foobar,它將返回/foobar

這就是爲什麼它無助於使用php查找包含文件。

知道什麼時候該文件是相對於文檔根目錄,你可以使用:

require_once($_SERVER['DOCUMENT_ROOT']."/site/all/libraries/recaptchalib.php"); 

或者如果該文件是一個模塊的一部分,更好的方法是可以通過找到它:

drupal_get_path('module', 'name-of-module') 
相關問題