我想要包含一个文件,但是$_get
,我不知道如何解释,但我尝试举例。
我需要像这样包含来自URL的文件
mysite.com/?=MYINCLUDETEXT
并写在<?php include('MYINCLUDETEXT.php'); ?>
任何人都告诉我,谢谢。
答案 0 :(得分:1)
这实际上会做你想要的事情
if (isset($_GET['file'])){
include($_GET['file'].'.php');
}
您可能还想测试该文件,您尝试包含存在 file_exists实际上是文件is_file,而不是文件夹。
但你必须明白,即使这样做,你也会在你的系统中造成严重的违规行为并帮助那些想破解你的人。 不仅包含上传文件(不仅是有效上传的文件)变得更容易,而且还允许包含服务器中的随机文件。
答案 1 :(得分:0)
为了避免上面的答案中描述的问题 - 将所有文件名(应该包括在内)放在数组中,例如:
$pages_array=('home','services','contact').
然后检查GET var:if(!in_array($_GET['page'], $pages_array) { die(); }
因为您可能需要一些其他的$ _GET值/ vars,我建议您使用$ _GET ['page'] - 包含...您可以稍后将mod重写添加到显示页面作为'普通'网址。例如
www.yoursite.com/index.php?page=contact,可以改写为:www.yoursite.com/contact.html