当前位置: 首页 > 图文教程 > 网络编程 > PHP > php download.php实现代码 跳转到下载文件(response.redirect)

PHP
PHPbb2.0.15远程命令执行漏洞利用程序
PHP:404错误陷阱并email给管理员的程序
如何加速你的PHP程序
谈网页编程PHP语言的发展
用PHP和MySQL保存和输出图片
虚拟主机中对PHP的特殊设置
SSI使用详解(一)
PHP安装攻略:安装并配置PHP
Php利用java解析xml
使用PHP实现动态网页
使用PHP和XSL stylesheets转换XML文档
自己写的mysql类
在php中输出html代码
关于session的问题集锦解决方案
Win XP下全新安装Apache2,PHP5,MYSQL5
用PHP写FTP文件上传
几个php技巧
身份证方面的函数
php+mysql扎实个人基本功
判断字符串emailAddr是否为合法的email格式

PHP 中的 php download.php实现代码 跳转到下载文件(response.redirect)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 132 ::
收藏到网摘: n/a

一直对php不太熟悉,今天需要类型asp的 response.redirect语句,但一直没有很好的解决方法。下面是问了朋友才知道的。 跳转核心代码实现。
复制代码 代码如下:

if (isset($link))
{
Header("HTTP/1.1 303 See Other");
Header("Location: $link");
exit;
}


下面是国外的一篇文章说明。
Hey Chris:
On Wed, Jan 26, 2005 at 12:28:19PM -0500, csnyder wrote:
>
> <?php
> // process form
> ...
> // redirect to results page
> header( 'HTTP/1.1 303 See Other' );
> header( 'Location: result.html' );
> exit( 'Form submitted, <a href="result.html">continue</a>.' );
> ?>
Good point. But some feedback here. The optimail syntax is:
<?php
// process form
// ...
// redirect to results page
header('Status: 303 See Other' );
header('Location: http://www.ruanchen.com/');
?>
Here's why...
Using "Status:" in the header is better because the resulting headers from
Apache are more correct:
HTTP/1.1 303 See Other
instead of
HTTP/1.1 303
Additionally, one doesn't really know which version of HTTP is being used,
so why potentially cause problems by trying to guess.
The specs say location headers must have a complete URI in them, not just
the path.
Lastly, you don't want any output after the location header.
Later,
--Dan