如何在表单提交后永久重定向到另一个页面
How to Redirect permantly to another page after form submission
你好,我想知道如何在表单提交后保护页面并重定向到其他页面。http://ranksurveys.com/users/signup在你提交表单后,他们在这里做什么,你不能再次访问该页面。您将自动重定向到http://ranksurveys.com/surveys我真的很好奇,希望有人能帮助我!
您可以使用cookie。是否可以作为服务器端或客户端使用。这可以很容易地通过Jquery cookie实现。
步骤1:添加脚本文件
<head>
<script src="path/to/jquery.js"></script>
<script src="path/to/jquery.cookie.js"></script>
</head>
步骤2:在受保护的表单页面添加这个脚本
var isProtected = $.cookie('page-protected');
if(isProtected == 'YES'){
// We dont need to stay them on current page if they have already submitted the form
window.location = "http://yoursite.com/your-thanking-page";
}
$.cookie('page-protected', 'NO');
步骤3:在感谢页面中,如果相关表单提交成功,您应该设置cookie YES。
if(formSubmitComplete){
$.cookie('page-protected', 'YES');
}
当用户提交表单时,您只需将表单提交的信息放入cookie会话中。在呈现表单之前,您只需检查cookie'session中的值,如果您发现表单已经提交,只需通过PHP发送位置和重定向状态码。你应该避免在JS中实现这个,因为任何人都可以很容易地在浏览器中禁用Javascript。
下面是一些丑陋但快速的代码示例,只是为了解释这个概念1. 检索表单 /* These are our valid username and passwords */
$user = 'jonny4';
$pass = 'delafoo';
if (isset($_POST['username']) && isset($_POST['password')) {
if (($_POST['username'] == $user) && ($_POST['password'] == $pass)) {
if (isset($_POST['rememberme'])) {
/* Set cookie to last 1 year */
setcookie('username', $_POST['username'], time()+60*60*24*365, '/account', 'www.example.com');
setcookie('password', md5($_POST['password']), time()+60*60*24*365, '/account', 'www.example.com');
} else {
/* Cookie expires when browser closes */
setcookie('username', $_POST['username'], false, '/account', 'www.example.com');
setcookie('password', md5($_POST['password']), false, '/account', 'www.example.com');
}
header('Location: index.php');
} else {
echo 'Username/Password Invalid';
}
} else {
echo 'You must supply a username and password.';
}
访问cookie并在未登录时重定向到登录。我希望你能理解如何实现一个相反的情况;)
/*这些是我们有效的用户名和密码*/$user = 'jonny4';$pass = 'delafoo';
if ($_COOKIE[['username']) &&收取($ _COOKIE['密码')){
if (($_POST['username'] != $user) || ($_POST['password'] != md5($pass))) { header('Location: login.html'); } else { echo 'Welcome back ' . $_COOKIE['username']; }
} else {头(地点:login.html);}
相关文章:
- 如何在一页网站中使用PHP重定向到一个页面
- php重定向到一个空白页面
- 在发布表单输入时,我可以重定向到一个新的php文件吗
- Firefox弹出窗口“;这个网页被重定向到一个新的位置“;在每个requestPromise ajax调用上,有什么方
- Facebook重定向到一个空白的权限请求页面
- 如何在组合框值更改时自动重定向下一个 jsp 页面
- 如何在更改字段中的选择后重置另一个字段中的数据
- 如果另一个下拉列表选择发生更改,则重置另一个下拉列表
- 重置另一个字段Primefaces的字段值
- javascript可以将我的页面重定向到一个url,如果失败,则不会发出警报
- 点击产品,它会自动重定向另一个网站
- 在选择电台,重定向到一个链接
- Phonegap Hybrid App - JavaScript重定向使一个绝对定位的元素闪烁并显示后面的内容
- 我需要做一个网站重定向到一个页面后21.45至10.00
- 如何使javascript加载新数据每次(不使用缓存数据),当我重定向到一个处理程序(页)在鼠标点击
- 重定向选择一个选择输入
- 我如何得到chrome.tab .update重定向到一个url
- 检查在旧版Internet Explorer中事件重定向期间一个事件是否与另一个事件相同
- 等待两秒钟,然后在jquery中自动重定向另一个页面
- Php重定向到一个服务器到另一个服务器的Php页面