我做的代码块:页眉位置PHP
$tag = $_GET['tag'];
if ($_SERVER[HTTP_REFERER'] == 'http://sitename.com/portfolio' || $_SERVER['HTTP_REFERER'] == 'sitename.com/tags/?tagname=' . $tag) : ?>
<figure class="folio-item">
<img src="<?php echo $mod->src; ?>" alt="">
</figure>
<?php else : ?>
<?php header('http://sitename.com/portfolio'); ?>
<?php endif ?>
因此,如果声明是真实的它使数字,这确实工作。 但是当声明不正确时,它给了我一个空文件,而不是标题为sitename.com/portfolio
我该怎么做这项工作?
解决方案:
$tag = $_GET['tag'];
if ($_SERVER[HTTP_REFERER'] == 'http://sitename.com/portfolio' || $_SERVER['HTTP_REFERER'] == 'sitename.com/tags/?tagname=' . $tag) : ?>
<figure class="folio-item">
<img src="<?php echo $mod->src; ?>" alt="">
</figure>
<?php else : ?>
<?php header('Location:http://sitename.com/portfolio'); ?>
<?php endif ?>
我添加地点:像布赖恩头功能说。
从合成角度讲,'$ tag = $ _GET ['tag']'缺少一个分号,'$ _SERVER [HTTP_REFERER']'缺少一个引号,并且两者都不可靠。 –
呵呵,我确实发现了问题,分号存在于我的文件中,没有在这里输入。 <?php header('http://sitename.com/portfolio'); ?>必须是<?php header('location:http://sitename.com/portfolio'); ?> – Floeske
然后查看如何使用标题http://php.net/manual/en/function.header.php –