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

PHP
PHP设计聊天室步步通
PHPShop存在多个安全漏洞
PHP数据库开发知多少
利用js调用后台php进行数据处理原码
基于PHP与XML的PDF文档生成技术
PHP应用提速面面观
用PHP将数据导入到Foxmail
Win2000+Apache+MySql+PHP4+PERL安装使用小结
新版mysql+apache+php Linux安装指南
PHP利用COM对象访问SQLServer、Access
PHP中实现进程间通讯
用PHP开发GUI
新版PHP极大的增强功能和性能
利用文件属性结合Session实现在线人数统计
初探PHP5
用libtemplate实现静态网页生成
用PHP实现WEB动态网页静态
在Windows中安装Apache2和PHP4的权威指南
用PHP编程开发“虚拟域名”系统
15个小时----从修改程序到自己些程序

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 267 ::
收藏到网摘: 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