首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP网站模板包括代码

PHP网站模板包括代码
EN

Stack Overflow用户
提问于 2013-10-26 13:43:58
回答 2查看 363关注 0票数 0

我正在尝试在我的index.php页面上有这段代码,这样我所要做的就是编写除了html之外什么都没有的短文件,作为网站的单独页面。例如:

不是让索引、关于和联系页面都有相同的模板代码,我希望只有索引页面有网站模板,并在主页导航上有一个关于和联系的链接,例如

代码语言:javascript
复制
        <a href="index.php?id=about.html">About</a> 
        <a href="index.php?id=contact.html">Contact</a>

连同一个php包含代码。诀窍是我也在使用php新闻脚本在主页上显示更新和内容,所以链接的include必须是else语句,我猜?

这就是我到目前为止所得到的,但是它返回的错误是

'id' is an undefined index

我不确定这是什么意思。

代码语言:javascript
复制
        <?php 
        $id = $_GET['id']; 
        if 
        ( isset($_GET['id']))
        { $number=5; include("news/newsfilename.php"); }
        else 
        { include "$id"; } 
        ?>
EN

回答 2

Stack Overflow用户

发布于 2013-10-26 13:49:59

首先,关于使用查询字符串修改主页的免责声明:这对SEO一点好处都没有。最好使用某种形式的.htaccess魔术来创建别名子目录,这些子目录在幕后传递给查询结构。例如,/about可能是index.php?id=about.html的隐藏别名。既然您没有问这个问题,我就不会回答这个问题了。

如果没有设置id查询参数,那么$id = $_GET['id'];也不会对您起作用,尽管您正在检查它,但是您还需要预先设置$id变量。

试着像这样速记:

代码语言:javascript
复制
<?php 
    $id = isset($_GET['id']) ? $_GET['id'] : 0; //This is equivalent to a long-form if/else -- if $_GET['id'] is set, get the value, otherwise return 0/false
    if ($id)
    { 
        $number=5; include("news/newsfilename.php"); 
    }
    else 
    { 
        include($id.".html"); //also suggesting you strip out .html from your HTML and add it directly to the php.
    } 
?>

然后是你的html:

代码语言:javascript
复制
<a href="index.php?id=about">About</a> 
<a href="index.php?id=contact">Contact</a>
票数 1
EN

Stack Overflow用户

发布于 2013-10-26 13:46:58

我认为这可能是您的第一行代码的结果。由于您在检查是否已设置之前尝试获取'id‘,如果未设置,您将得到一个错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19603329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档