我堆叠了!!!!
我有一个简单的URL重定向脚本,我用它来再次使用简单的urlid字符串将访问者重定向到小部件下载页面
http://www.example.com/get.php?urlid=blue_widget
休息与往常一样,当请求发送到get.php时返回下载登录页面的URL。
现在出现问题:
当发送正确的urlid或者发送为空时,一切正常,然后我的get.php将访问者重定向到我的主索引页面。当发送未知(不存在)urlid时,问题会发生,而浏览器会返回以下内容
页面没有正确重定向Firefox已经检测到了 服务器正在以一种方式重定向该地址的请求 永远不会完成此问题有时可能是由禁用或导致的 拒绝接受自己。
以下是我的get.php文件的内容
<?php
$urlid = $_GET['urlid']
if ($urlid == "") {$link = "http://www.example.com/";}
if ($urlid == "blue_widget") {$link = "http://www.example.com/download.php?fileid=blue_widget.doc";}
header ("Location: $link");
exit();
?>
请帮忙
答案 0 :(得分:1)
你可以这样做:
<?php
if (isset($_GET['urlid'])) {
switch ($_GET['urlid']) {
case 'blue_widget':
$link = 'http://www.example.com/download.php?fileid=blue_widget.doc';
break;
case 'second_widget':
$link = 'http://www.example.com/download.php?fileid=second_widget.doc';
break;
case 'blabla':
$link = 'http://www.example.com/download.php?fileid=blabla.doc';
break;
default:
$link = 'http://www.example.com/';
}
} else
$link = 'http://www.example.com/';
header("Location: $link");
exit();
我希望它可以帮到你! =)
答案 1 :(得分:0)
使用PHP isset函数http://php.net/manual/en/function.isset.php查看是否设置了$ _GET ['urlid']。
答案 2 :(得分:0)
您还可以通过执行以下操作来检查文件是否存在:
if (file_exists(basename($_GET['urlid']).".doc"))
{$link = "http://www.example.com/download.php?fileid=".$_GET['urlid'].".doc";}