哪一个更好的php或jquery?
header('Location: http://myhost.com/mypage.php');
or
printf('<script type="text/javascript">location.href = " http://myhost.com/mypage.php";</script>');
我们何时使用一个而不是另一个?谢谢 。是用户感兴趣还是他们有任何条件要遵循。请告诉我,标题的基本需求是什么,它是如何工作的。
答案 0 :(得分:3)
如果只是重定向问题,我会使用PHP(用户无法阻止此操作),就像用户已禁用JavaScript一样,重定向将失败。
如果你想要一个更简单的,你可以使用像
这样的简单HTML<meta http-equiv="refresh" content="0;url=NEW PAGE URL" />
<!-- Redirect Immediately-->
或者说30秒后
<meta http-equiv="refresh" content="30;url=NEW PAGE URL" />
<!-- Redirects after 30 secs -->
注意:如果您使用
header()
进行重定向,请确保不这样做 输出任何HTML或你没有任何空格或你会得到一个 警告说headers already sent
答案 1 :(得分:2)
如果你在PHP中重定向,打印一行javascript来重定向没有多大意义,因为PHP会在任何内容发送到浏览器之前重定向,而javascript会在页面加载后重定向。
使用PHP。
答案 2 :(得分:0)
php更好,因为它没有开启/关闭JavaScript,但它也取决于你在做什么。如果它是一个jquery提交表单,你需要重定向然后jquery否则php。
答案 3 :(得分:0)
PHP one通常被使用,除非由于某些条件需要使用javascript而需要它。即使浏览器javascript被禁用,php重定向也会起作用。 Javascript重定向主要用于某种事件和条件,如
$('#clickMe').click(function(){
if(somecondition){
header.location = 'http://....';
}
})
答案 4 :(得分:0)
在PHP场景中,header()确实将信息发送回浏览器(客户端),然后浏览器向新URL发出新请求。因此,它是相同的客户端 - &gt;服务器 - &gt;客户端 - &gt;服务器 - &gt;客户端。区别在于使用PHP模型,您只在第一轮发回标头而不是HTML。这更有效率。所以,是的,PHP模型是一个更好的解决方案,但从技术上讲,您具有相同数量的通信循环。要了解详情,请参阅Google HTML标题和标题通讯。
答案 5 :(得分:0)
这两种方法可用于解决不同的问题,例如:
如果您希望以编程方式从您的UI控制应用程序流使用javascript重定向,您可以渲染html并根据UI操作重定向客户。
如果你想尽可能快地重定向客户后端解决方案更有意义,它就不会加载任何html,只要它重新定向用户,就会立即向浏览器发送带有新位置和浏览器的新标题。