首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >会话保护3

会话保护3
EN

Stack Overflow用户
提问于 2013-04-01 01:00:50
回答 2查看 70关注 0票数 0

我正在点点滴滴地创建一个网页,测试部分网页的想法。我想学习如何对页面进行会话保护。我已经对一个页面进行了安全的密码保护,但任何人都可以通过输入url来访问该页面。我想要对我的页面进行会话保护,这样就没有人可以这样做了。我有三个页面: index.html,它具有发送password.php的表单;password.php,它使用"if语句“(这里是"if语句”)确保密码和用户名是正确的。

代码语言:javascript
运行
复制
    if ($username == 'mgmb99'){
    if ($password == 'mgmb91mas'){
    header('Location: youhere.php');
    } else {
    echo 'your username or password is wrong.<a href="http://www.passwordtest.comze.com"> go back to login page </a>';
    }} else {
    echo 'your username or password is wrong.<a href="http://www.passwordtest.comze.com"> go back to login page </a>';
    };

和youhere.php,这是您登录后的页面。

EN

回答 2

Stack Overflow用户

发布于 2013-04-01 01:12:18

网上有很多很好的例子。但是,会话限制(以及数据库)最好使用salt键或散列。

所以基本上你需要一个id/用户名和一段随机的文本,然后(例如)用sha1对其进行散列。

代码语言:javascript
运行
复制
sha1($[your username].'completely random piece of text')

这将给你一个40个字符的字符串,如果你有用户名和随机文本,你可以重现它。所以:

if($SESSION‘’id‘== sha1($your用户名。’完全随机的文本‘)){ //现在您知道用户名是正确的}

基本上就是这样。当然,它也有更多的技巧。但不要在会话中放入任何对任何人都有意义的内容。因此,只要在会话中使用公共ID(而不是用户ID)以及散列数据即可。

下面是一个简单会话的示例(我没有检查它,但它很容易入门):http://www.webdesign.org/web-programming/php/password-protect.11092.html

祝你好运!

票数 1
EN

Stack Overflow用户

发布于 2013-04-01 01:19:57

代码语言:javascript
运行
复制
do like this
<?php
session_start();
if ($username == `enter code here`)
{
    if ($password == `mgmb91mas`)
    {
      $_SESSION[`id`]='Secret code';
      header(`Location:page.php`);
    }
?>
and check that id in the next page at start like below
<?php
session_start();
if($_SESSION['id']!='Secret code')
{
header('Location:inde.php');
}
?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15732011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档