从以前的位置恢复webapp?

man*_*ans 5 iphone jquery web-applications mobile-safari jquery-mobile

我有一个webapp,用于存储用户数据,因为如果他们在iPhone上的主屏幕应用模式下点击外部链接并让应用程序查看网页或类似内容.

当他们返回webapp时,将如何恢复在同一位置.目前它没有相同的位置,它重定向到主页我希望它的简历从以前的位置..

如何做到这一点,任何想法?

ada*_*ven 7

从大多数情况下,Web应用程序可以从中断处继续,因为用户将Web应用程序图标(假设在iOS设备上)存储为主屏幕上的书签,它只是启动将该特定网页作为Web应用程序返回到Web应用程序时.

但是,你可以做的是设置一个cookie(通过PHP或Javascript)等于用户每次在移动应用程序中查看页面时查看的完整URL.例如(在PHP中):

//--- Set lastPage cookie for 24 hrs for your domain --- //
setcookie('lastPage', 'http://www.example.com/products/bicycles', time()+86400, '/');
Run Code Online (Sandbox Code Playgroud)

回答:

在您的主页上,在显示任何内容之前,请检查PHP(或选择的语言)是否$_COOKIE['lastPage']已设置.如果是,请执行if语句将用户重定向到上次查看的页面.

<?php
    if(isset($_COOKIE['lastPage'])) {
        header('location: '.$_COOKIE['lastPage']);
        exit();
    } 
?>
Run Code Online (Sandbox Code Playgroud)

这将对用户显得无缝,并使其看起来好像Web应用程序正在"记住"他们的会话.因此,在主页以外的每个页面的顶部,您将在显示任何内容之前放置下面的代码(替换pageUrl每个页面的实际URL的URL):

<?php     
    $pageUrl = 'http://www.example.com/products/bicycles/';
    setcookie('lastPage', $pageUrl, time()+86400, '/');
?>
Run Code Online (Sandbox Code Playgroud)

循环数据库结果:

<?php     
    foreach(database['row'] as $variableName => $variableValue) {
        setcookie($variableName, $variableValue, time()+86400, '/');
    }
?>
Run Code Online (Sandbox Code Playgroud)