我是一名jsp程序员,他已经花了一些功课来自学PHP;) 所以我的问题是在php文件中包含文件。 这里解释的是代码。
的index.php
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Home</title>
</head>
<body>
<?php include("/php/lib/banner.php"); ?>
</body>
</html>
banner.php
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Banner</title>
</head>
<body>
<table width="100%">
<tr>
<td>
<img src="../../images/banner.jpg" width="100%" /></td>
</tr>
</table>
</body>
</html>
文件位置:
main\index.php
main\php\lib\banner.php
main\images\banner.jpg
我得到的错误是在索引页面中没有显示图像,但是当我直接访问banner.php时它会起作用
请建议。
此致 Sworoop Mahapatra
答案 0 :(得分:2)
包含字面意思将一个文件的内容放入另一个文件中,因此您希望路径成为您在index.php中使用的路径(images / banner.jpg)
答案 1 :(得分:1)
当您使用include函数包含php文件时,解析器实际上从'banner.php'中获取内容并插入到调用它的位置。
现在你引用了关于banner.php目录的图像源,当使用include
时,它应该被引用与index.php目录的正确指针(文件的目录)在哪里被称为)
在你的情况下,它是从两个目录 UP 请求图像不存在的主目录!!
工作用途:
<img src="images/banner.jpg" width="100%" />
答案 2 :(得分:0)
This should work:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Banner</title>
</head>
<body>
<table width="100%">
<tr>
<td>
<img src="images/banner.jpg" width="100%" /></td>
</tr>
</table>
</body>
</html>
答案 3 :(得分:0)
当您加载index.php时,banner.php位置从...开始
main\
当您单独加载banner.php时,位置为...
main\php\lib\
你真的不能有一个可以同时使用的URL。你需要单独加载横幅吗?如果您只需要横幅在index.php中工作,那么请将行更改为...
<img src="images/banner.jpg" width="100%" /></td>
它将从index.php开始工作,但在加载banner.php时则不行。
要使它们同时工作,您需要将它们复制到同一文件夹或至少稍微修改文件夹的结构。
编辑:如果你能告诉我这个横幅需要的其他文件的位置,只需列出,我会试着看看它是如何排序的。
答案 4 :(得分:0)
将代码保留在banner.php文件中的body元素中。 PHP将按字面意思获取文件的内容并将其插入到include函数所在的位置。在代码的当前形式中,您将在页面的body元素内部使用html元素,这是完全错误的,可能会导致浏览器出现意外行为。
此外,路径必须相对于您在浏览器中实际访问的URL,而不是相对于HTML代码来自的文件。
这样的布局可行:
的index.php
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Home</title>
</head>
<body>
<?php include("php/lib/banner.php"); ?>
</body>
</html>
banner.php
<table width="100%">
<tr>
<td>
<img src="images/banner.jpg" width="100%" /></td>
</tr>
</table>
相同的文件位置:
main\index.php
main\php\lib\banner.php
main\images\banner.jpg
请记住,include将接受一个PHP文件,处理它并按字面包含其结果。
答案 5 :(得分:0)
另一种解决方案是拥有完整的图像路径。
例如:
<img src="http://yoururl/image_path"/>