我有这个设置。
root dir|
index.php
config.php
file.php |
|
|scripts|a.js
|
|account
|index.php
| |
|member |index.php
现在,我已将成员dir的index.php包含到account dir的index.php中。此外,帐户index.php包含config.php,其中包含
define( 'PATH', (__DIR__) );
现在,对于我使用的帐户index.php中的所有包含,
require_once( PATH . '\file.php' );
并且正常运作。但是当我尝试添加脚本src的路径时,例如
<script type="text/javascript" src="<?php '.PATH.'scripts/livevalidation.js ?>"></script>
我收到错误,所以如何使用全局定义的路径将脚本文件夹中的a.js包含到account.php中。
感谢。
答案 0 :(得分:2)
PHP“__DIR__”和“__FILE__”对服务器来说是绝对的。您不应该使用任何一个脚本。
<script src="/scripts/livevalidation.js"></script>
此外,您的PHP看起来有一些语法错误,这是正确的(虽然仍然无效:
<script src="<?php echo PATH.'/scripts/livevalidation.js'; ?>"></script>
答案 1 :(得分:0)
您在print
标记的PHP语句中缺少echo
或script
语句。你也把连接期放在错误的地方。但是,最重要的是,您尝试包含的JavaScript不需要在PHP语句中。
所有这一切,最后一行应如下所示:
<script type="text/javascript" src="<?php echo PATH ?>scripts/livevalidation.js"></script>
然而,最重要的是,我认为上述内容并不像您期望的那样有效。 __DIR__
输出服务器端文件系统路径,这在通过HTTP导入JavaScript时没有意义。我建议更多的内容如下:
<?php define('URL_ROOT', '/'); ?>
<script type="text/javascript" src="<?php echo URL_ROOT ?>scripts/livevalidation.js"></script>
在上面的示例中,URL_ROOT
将指向一个绝对URL,在该URL下提供静态媒体(CSS,JavaScript等)。