开发者社区> 问答> 正文

PHP-使用登录系统保护仅会员页面?mysql

您好,我为编写的PHP代码所困扰。我盯着这个看了好几个小时都没有成功,请帮助查找我显然已经过去的任何错误。

我想要此脚本执行的操作是从html表单页面中查询数据库表(“用户”)以确保其密码和用户名正确,然后在单独的表(“令牌”)中插入随机令牌(我以前使用过的方法,它可以正常工作)进入“ tk”列,然后用户进行常规身份验证。代码从“用户”表拉入“令牌”表中的“ gauth”列。

进行其他常规身份验证的原因是,我可以提取其用户名并将其显示在我计划“保护”的所有页面上

对不起,如果我感到困惑,这是我可以改进的最佳方法。另外,我不太擅长格式化:)。稍后我将添加一些html,这就是标记在那里的原因。

MySQL表:

用户示例:

cols: username | password | email | classcode | tcode | genralauth | hello | world | hello.world@gmail.com | 374568536 | somthin | 8945784953 | 代币示例:

cols: gauth | tk | 3946893485 |wr8ugj5ne24utb| PHP:

connect_error) { die("Connection failed: " . $conn->connect_error); } ?> query($sql1); if ($conn->query($sql1) === TRUE) { echo ""; } ?> query($sql2); if ($conn->query($sql2) === TRUE) { echo ""; } ?> query($sql3); } ?> query($sql4) === TRUE) { echo "New token genrated."; } else { echo "Error: " . $conn->error; } } ?>

Succesfuly loged in!


">

Incorrect, please try again.



close(); ?> 这是我将在大多数页面上用于令牌身份验证的PHP,但是它实际上并没有检查数据库的“令牌”,我还需要一种使用常规身份验证显示登录用户名的方法。 PHP:

Virtual Work Sheets!

[Log In / Register]


connect_error) { die("Connection failed: " . $conn->connect_error); } ?> query($sql); ?> Invalid token, please consider re-logging.

"; } else { ?> 老师页面html在这里... 学生页面html在这里...

展开
收起
保持可爱mmm 2020-05-17 14:31:45 792 0
1 条回答
写回答
取消 提交回答
  • 我建议您改变方法。

    尽管乍一看这些示例文件看起来很多,但是一旦研究它们,您会发现它实际上比现在的方向更加简单和合乎逻辑。

    首先,将db connect / login内容移到一个单独的文件中,require或include将该文件移到每个PHP页面的顶部:

    初始化PHP

    // Create connection
    $conn = new mysqli($servername, $username, $password, $db);
    
    // Check connection
    if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
    } 
    
    //Might as well also load your functions page here, so they are always available
    require_once('fn/functions.php');
    

    ?> 现在,在“索引(和受限)”页面上查看我们如何使用它?

    索引文件

    LoginID:
    LoginPW:
    JS / INDEX.JS $(function(){ $('#myButt').click(function(){ var id = $('#liID').val(); var pw = $('#liPW').val(); $.ajax({ type: 'post', url: 'ajax/login.php', data: 'id=' +id+ '&pw=' +pw, success: function(d){ if (d.length) alert(d); if (d==1) { window.location.href = 'restricted_page.php'; }else{ $('#liID').val(''); $('#liPW').val(''); alert('Please try logging in again'); } } }); });//END myButt.click }); //END document.ready AJAX /登录

    Welcome to the Admin Page, 来源:stack overflow

    2020-05-17 14:33:20
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像