标头位置的服务器错误500

时间:2015-11-10 10:41:01

标签: php

在我在一个地方的项目中,我使用以下代码行,但是这个代码服务器显示服务器错误500.我的代码是。

header("location:../../views/tileesDesign/viewAlbum.php?album='".$_GET['album']."'&com_id='".$_GET['com_id']."'&d_id='".$_GET['d_id']."'");

此行生成服务器错误,没有此行我没有错误。我认为标题位置查询字符串的问题。

那么,请教我如何在header函数中定义查询字符串?

1 个答案:

答案 0 :(得分:2)

删除querystring参数值

周围的单引号
header("location: ../../views/tileesDesign/viewAlbum.php?album=".$_GET['album']."&com_id=".$_GET['com_id']."&d_id=".$_GET['d_id']);

或者使其更容易阅读和调试

header("location: ../../views/tileesDesign/viewAlbum.php?album={$_GET['album']}&com_id={$_GET['com_id']}&d_id={$_GET['d_id']}");

使用命令行中的示例代码并伪造一个包含所有必需出现的$ _GET数组: -

<?php
//header("location: ../../views/tileesDesign/viewAlbum.php?album=".$_GET['album']."&com_id=".$_GET['com_id']."&d_id=".$_GET['d_id']);
$_GET = array('album' => 'aaa', 'com_id'=> 'bbbb', 'd_id'=>'ccc');

echo "location: ../../views/tileesDesign/viewAlbum.php?album=".$_GET['album']."&com_id=".$_GET['com_id']."&d_id=".$_GET['d_id'];
echo PHP_EOL;
echo "location: ../../views/tileesDesign/viewAlbum.php?album={$_GET['album']}&com_id={$_GET['com_id']}&d_id={$_GET['d_id']}";

从以上任一选项生成此putput: -

location: ../../views/tileesDesign/viewAlbum.php?album=aaa&com_id=bbbb&d_id=ccc

location: ../../views/tileesDesign/viewAlbum.php?album=aaa&com_id=bbbb&d_id=ccc