2012-03-23 96 views
1

我需要需要一個Drupal節點中的一個文件,例如:使用PHP需要一個Drupal節點

<?php 
require('/help/sites/all/themes/help12/brightcove/bc-mapi.php'); 

//Do Stuff Here 

?> 

我得到的錯誤:

警告:要求(/幫助/網站/ C:\ dev \ srv \ Apache2.2 \ htdocs \ help \ includes \ common.inc(1696)中沒有這樣的文件或目錄:all/themes/help_infusion12/brightcove/bc-mapi.php):無法打開流eval()'代碼在線2上。

該文件在那裏,我已經在drupal之外的一個php腳本上測試過了。不知道什麼是搞砸了。

感謝您的幫助。

+0

建議你使用'drupal_get_path()使用Drupal的方式'有例如由Clive – optimusprime619 2012-03-23 08:30:54

回答

2

的「Drupal的方式:

$path = drupal_get_path('theme', 'help12'); 
require ($path . '/brightcove/bc-mapi.php'); 
+0

給予我想吻你。謝謝。 – joshmmo 2012-03-23 20:29:01

0

嘗試

require('../../help/sites/all/themes/help12/brightcove/bc-mapi.php'); 

require('../sites/all/themes/help12/brightcove/bc-mapi.php'); 
0

它看起來就像你在PC上開發。既然你有一個絕對路徑,從斜線開始,Apache會將其視爲從SERVER_ROOT開始。

拿你httd.conf一看,你會看到類似

# DocumentRoot: The directory out of which you will serve your 
# documents. By default, all requests are taken from this directory, but 
# symbolic links and aliases may be used to point to other locations. 
# 
DocumentRoot "c:/xampp/htdocs" 

在這種情況下,宇瞻將尋求

C:/ XAMPP/htdocs中/幫助/網站/所有/ themes/help12/brightcove/bc-mapi.php

使用相對路徑可能會更好。

請注意,這不是一個Drupal問題(順便說一下,stackexchange有一個很好的Drupal站點)。

祝你好運!