我正在尝试写文件列表并将其放入数组.
必须更改调用外部内容的页面上的内容.
我找到了这小段代码,并试图使其正常工作.
LINK(最新评论)
$all_pages=array("main","page_two","page_three");
$page = $_GET['page'];
if( isset($page) and array_key_exists("$page", $all_pages) ) // added a missing ')'
{
include('subfolder/folder/'.$_GET['$page'].'.html');
}
好吧,这行不通.
只是无法找到正确的文件. (内容始终显示为空).
我(尝试)将文件称为:
<ul>
<li><a href="template.PHP?main">Main content</a></li>
<li><a href="template.PHP?page_two">Second content</a></li>
<li><a href="template.PHP?page_three">Third content</a></li>
</ul>
提前致谢!
解决方法:
您将必须使用in_array()来测试允许的值. array_key_exists将要求页面名称为数组键.
其次,$_GET [“ page”]将为空,因为您没有该名称的get参数.您必须调整链接:
<li><a href="template.PHP?page=main">Main content</a></li>
<li><a href="template.PHP?page=page_two">Second content</a></li>
<li><a href="template.PHP?page=page_three">Third content</a></li>
(或者使用$_SERVER [“ QUERY_STRING”].但是您可能不想这样做.)
您的第三个问题是使用:
include('subfolder/folder/'.$_GET['$page'].'.html');
^^^ ^^^
您应该只在这里使用$page变量,您已经从$_GET中读取了该变量.再次使用该名称作为键将不起作用.您还使用了它-单引号(双重错误,但幸运的是没有作用).
因此正确的是:
$all_pages = array("main", "page_two", "page_three");
$page = $_GET['page'];
if ( in_array($page, $all_pages) )
{
include('subfolder/folder/'.$page.'.html');
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。