2012-08-06 65 views
0

我有一个URL模式移动应用喜欢 -PHP:如果标题位置失败,我们可以绕过吗?

$appUrl = 'testapp://testpage/10'; 
从PHP

现在,用户需要重定向的APP-内,如果应用程序是安装,不显示页面内容。所以,现在做这个 -

header('location: '.$appUrl); 

但是,如果未安装应用程序,要绕过重定向并显示整个页面。

我也发送标志在重定向之前检查。喜欢 -

if($hasAppFlag) 
{ 
    header('location: '.$appUrl); 
    exit; 
} 

$hasAppFlag不会是权在所有情况下。所以想绕过 - 如果失败了。

由于未安装应用程序,目前正在使用浏览器进行测试,并给出空白屏幕。 有没有办法在PHP中做到这一点? [能做到这一点的JS/jQuery的,如果没有办法。]

IMP:

为,将在客户端打开APP,和$ hasAppFlag会通过短信向手机数; 因此,如果用户在没有APP的情况下切换到新手机,那么将不会安装应用程序。并重定向到testapp:// testpage/10将失败。

所以$ hasAppFlag并不总是对的

回答

0

是不是你谈论旁路,正好相反步骤,如果($ hasAppFlag)?如果是这样,你就不能添加一个“其他”语句

if($hasAppFlag) { 
} 
else { 
bypass 
} 

史蒂夫

+0

不是那样的。因为它会在客户端打开APP,而$ hasAppFlag将通过SMS发送到电话号码;因此,如果用户在没有APP的情况下切换到新手机,那么将不会安装应用程序。并重定向到testapp:// testpage/10将失败 – 2012-08-06 15:10:09

+0

@AviC,因此您应该尝试提前检测用户是否切换到新手机,对不对?如果您无法确定是否发生了这种情况,那么修复您发布的代码的操作就不多了。我确信有办法处理它,但这个问题本身并不在你发布的任何代码中。 – Mahn 2012-08-06 15:28:07

+0

答案我认为,Avi的重点是使布尔$ hasAppFlag,总是正确的,即改变设置布尔标志的逻辑 - 你可能想发布另一个问题,如果你有问题时如何改变逻辑这里? – Steve 2012-08-13 09:46:20

0

保持你的代码,因为它是:要么$hasAppFlag是真实的和header将执行和重定向,或者正好位于代码在右括号将运行后。

代码中没有什么可以改变的。

+0

$ hasAppFlag并不总是正确的。请看我的编辑。 – 2012-08-06 15:19:46

+0

正如我在答案中所解释的那样,只有两个选项:“if”语句中的条件为true,然后“header”将运行。或者条件为false,那么右括号后的代码将运行。 – Jocelyn 2012-08-06 15:27:56

相关问题