2013-03-20 68 views
0

是可以重定向到一个文件,然后2次,第三次将其重定向到别的地方重定向文件只有一次

EX:的index.php重定向到/index2.php然后/index2.php重定向到/index.php ..... ,,,,然后第二次访问/index.php它会将我们重定向到其他文件?

我们可以用javascript或PHP来做到这一点吗?

回答

1

的index.php redirets到index2.php

index2.php重定向到的index.php?r=1

中的index.php检查:

if($_GET['r']==1){ 
    //redirect to other page 
} 

UPDATE

我了解你有这样的重定向:

1. Somewhere => index.php 
2. index.php => site.com 
3. site.com => index.php // and in this step you need to redirect to other place 

所以只需添加检查:

<script type="text/javascript"> 
if(document.referrer == 'site.com'){ 
    location.href = 'OTHER PAGE ADDRESS'; 
} 
else{ 
    location.href = 'site.com'; 
} 
</script> 

所以,如果用户从其他网站来了,他会重定向到site.com如果他从网站。 com何时去其他地方。

+0

对不起,我想我问错了问题我只有超过1个重定向控制,所以我只能控制1个文件EX:HTTP://site.com/redirect1重定向到mysite的/索引.php然后mysite/index.php重定向到site.com/redirect1所以现在我使用javascript重定向setInterval(function(){document.location =“site。com/redirect1“},3500);但是这最终会像一个轮子里的松鼠:P – cton453 2013-03-20 12:03:55

+0

在这种情况下,您可以使用'document.referrer'并检查它是否从site.com重定向到不同的地方 – Narek 2013-03-20 12:11:57

+0

这将如何工作我有什么可以使用的柜台? – cton453 2013-03-20 12:28:31

0

是的,您可以在会话变量中添加一个计数器来跟踪重定向。每次重定向后,递增计数器。

当计数器达到其极限时,执行所需的操作。

+0

感谢这个任何例子? – cton453 2013-03-20 12:04:55

+0

set $ _SESSION [counter] = 0; 就在重定向递增计数器之前,像这样: $ _SESSION [counter] + = 1; header('Location:index.php'); 现在在另一页上,您可以检查会话变量的值。 – Harpreet 2013-03-20 12:17:14

+0

我只有控制到1个文件可能结合两个文件? – cton453 2013-03-20 12:35:49

0

是的,你可以。问题是你想要它是多久。

JAVASCRIPT:

如果你想用JavaScript来做到这一点,然后看看 window.location 并记住用户是否在第一页上只使用JavaScript的cookie。 简单教程http://www.tutorialspoint.com/javascript/javascript_cookies.htm 您也可以设置到期。

PHP:

如果你想让它“少永久”,例如刚一个打开浏览器窗口或类似的,然后看看PHP会话管理的东西 http://php.net/manual/en/features.sessions.php

+0

谢谢,但对于像我这样的新手来说太复杂了:P – cton453 2013-03-20 12:05:56

0

我写的代码index.php?re_id =

在每个页面上提及re_id。 n您可以给多个条件

+0

我只能控制1个文件,所以这仍然有可能吗? – cton453 2013-03-20 12:07:45

+0

如果头文件已经从另一个文件中设置,我们仍然可以设置另一个头文件?在我的代码中有这个 include('main.php'); <==这里已经设置了标题 – cton453 2013-03-20 20:43:04