Rumah pembangunan bahagian belakang tutorial php PHP程序header location 进行跳转的注意细节及ie兼容问题!

PHP程序header location 进行跳转的注意细节及ie兼容问题!

Jun 20, 2016 pm 01:01 PM
Lompat halaman

使用PHP程序header location 进行跳转的注意的一个细节!

众所周知,PHP网站跳转有三种方法:JS、HTML META Refresh、PHP header("location: $url")。但是这里有一个非常小的细节,很容易导致出错。

有一次制作一个跳转程序,结果忽略了这一点,导致跳转其实都是没有成功。

程序全部源码如下,程序地址:http://www.***.com/go.php

<?php error_reporting(7);
$url = urldecode( trim($_REQUEST['url']));
if($url)
{
    header("Location: $url");

} else {

    exit('Error Input,<a href="http://www.***.com/?f=go.php">go back');
}
Salin selepas log masuk


当访问地址为:http://www.***.com/go.php?url=http%3A%2F%2Fwww.zbphp.com%2F 的时候,firefox浏览器是正常的。后来把这个跳转程序复制到公司的另外一个网站,让QQ上的一些好友测试,结果很多人都说打不开:IE内核的浏览器直接提示无法访问或者找不到,chrome有时候会提示被重置或找不到,使用firefox测试也偶偶会提示无法找到,但多刷新一次才显示正常。

仔细检查代码,是没有问题的。况且firefox是可以跳转,后想到了以往阅读到的一点就是:IE浏览器如果输出的内容字节太小(小于512字节),那么就会被忽略。然后将源码由header location跳转修改为 js html才所有浏览器都测试通过,原先偶偶出现firefox点击提示找不到xxx服务器也没有再出现过,现go.php全部源码:

<?php error_reporting(7);
function gheader($url)
{
echo '<html><meta http-equiv="Content-Language" content="zh-CN"><meta http-equiv="Content-Type" content="text/html;charset=gb2312"><meta http-equiv="refresh" content="0;url='.$url.'"><title>loading ... </title><div style="display:none">
<script type="text/javascript">var cnzz_protocol = (("https:" == document.location.protocol) ? " https://" : " http://");document.write(unescape("%3Cspan id=\'cnzz_stat_icon_5696423\'%3E%3C/span%3E%3Cscript src=\'" + cnzz_protocol + "s9.cnzz.com/stat.php%3Fid%3D5696423%26show%3Dpic1\' type=\'text/javascript\'%3E%3C/script%3E"));</script>
</div>
<script>window.location="'.$url.'";</script>
Salin selepas log masuk
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Penjelasan terperinci tentang fungsi lompat halaman PHP: kemahiran lompat halaman pengepala, lokasi, ubah hala dan fungsi lain Penjelasan terperinci tentang fungsi lompat halaman PHP: kemahiran lompat halaman pengepala, lokasi, ubah hala dan fungsi lain Nov 18, 2023 pm 05:08 PM

Penjelasan terperinci tentang fungsi lompat halaman PHP: kemahiran lompat halaman pengepala, lokasi, ubah hala dan fungsi lain

Gunakan uniapp untuk mencapai kesan animasi lompat halaman Gunakan uniapp untuk mencapai kesan animasi lompat halaman Nov 21, 2023 pm 02:15 PM

Gunakan uniapp untuk mencapai kesan animasi lompat halaman

Contoh kod PHP: Cara menggunakan POST untuk lulus parameter dan melaksanakan lompatan halaman Contoh kod PHP: Cara menggunakan POST untuk lulus parameter dan melaksanakan lompatan halaman Mar 07, 2024 pm 01:45 PM

Contoh kod PHP: Cara menggunakan POST untuk lulus parameter dan melaksanakan lompatan halaman

Ralat UniApp: Tidak dapat mencari penyelesaian untuk lompat halaman 'xxx' Ralat UniApp: Tidak dapat mencari penyelesaian untuk lompat halaman 'xxx' Nov 25, 2023 am 09:53 AM

Ralat UniApp: Tidak dapat mencari penyelesaian untuk lompat halaman 'xxx'

Bagaimana untuk melaksanakan lompatan halaman dan navigasi dalam uniapp Bagaimana untuk melaksanakan lompatan halaman dan navigasi dalam uniapp Oct 20, 2023 pm 02:07 PM

Bagaimana untuk melaksanakan lompatan halaman dan navigasi dalam uniapp

Bagaimana untuk menggunakan penghalaan untuk melaksanakan lompatan halaman dalam Vue? Bagaimana untuk menggunakan penghalaan untuk melaksanakan lompatan halaman dalam Vue? Jul 21, 2023 am 08:33 AM

Bagaimana untuk menggunakan penghalaan untuk melaksanakan lompatan halaman dalam Vue?

Ringkasan penghalaan JavaScript dan pengalaman lompat halaman dalam pembangunan bahagian hadapan Ringkasan penghalaan JavaScript dan pengalaman lompat halaman dalam pembangunan bahagian hadapan Nov 02, 2023 am 10:15 AM

Ringkasan penghalaan JavaScript dan pengalaman lompat halaman dalam pembangunan bahagian hadapan

Penjelasan terperinci langkah operasi lompat halaman di Golang Penjelasan terperinci langkah operasi lompat halaman di Golang Mar 05, 2024 pm 05:33 PM

Penjelasan terperinci langkah operasi lompat halaman di Golang

See all articles