【问题标题】:User management system through php session用户管理系统通过php session
【发布时间】:2016-09-24 05:23:23
【问题描述】:

Login.php

 <?php

    session_start();
    require("Register.php");    
    if(isset($_POST['loginButton'])){

        try {

            $email = $_POST['email'];
            $password = $_POST['password'];

            $query = $conn->prepare("SELECT * FROM Users WHERE Email = '$email' AND password = '$password'");
            $query->execute();

            if($query->rowCount() > 0 ) {
                    $_SESSION['user'] = $email;
                    header("location: ../html/myAccount.html");
            }
            else {
                echo "Email not found!";
            }
        }
        catch (PDOException $e){
                echo $e->getMessage();
        }
    }
?>  

HTML 页面

    <?php
    session_start();
    echo $_SESSION['user'];
    ?>


    <!DOCTYPE html>
    <HTML>
    <HEAD>
        <title>BMA.WALLET</title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

        <link rel="stylesheet" type="text/css" href="../css/page-style.css">
        <link rel="stylesheet" type="text/css" href="../css/account-style.css">

        <link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic,800,800italic' rel='stylesheet' type='text/css'>
        <link href='https://fonts.googleapis.com/css?family=Roboto:400,100,300,100italic,300italic,400italic,500,500italic,700,700italic,900,900italic&subset=latin,latin-ext' rel='stylesheet' type='text/css'>

        <link rel="shortcut icon" href="../img/wallet.png"/>
    </HEAD>

    <BODY> 
        <div id="wrapper">
        <div id="HEADER">
            <h1><span>BMA.</span>WALLET</h1>
            <div class="motto">Cu noi știi unde ți-au zburat banii!</div>
            <div class="main-menu">
                <ul>
                    <li><a href="Facilities.html"><img src="../img/facilities.png" width="40" alt="logout icon" title="Facilități"></a></li>
                    <li><a href="myAccount.html"><img src="../img/report.png" width="40" alt="logout icon" title="Rapoartele tale"></a></li>
                    <li><a href="groupPage.html"><img src="../img/group.png" width="40" alt="logout icon" title="Grupurile tale"></a></li>
                    <li><a href="Settings.html"><img src="../img/settings.png" width="40" alt="settings icon" title="Setările tale"></a></li>
                    <li><a href="#"><img src="../img/iconLogout.png" width="40" alt="logout icon" title="Deconectează-te!"></a></li>
                </ul>

            </div>
        </div>

        <div class="center" id="CONTENT">
            <div class="personal-reports">
                <h1>Contul personal - rapoarte</h1>

                <h2>Statistică periodică: Venituri și Cheltuieli </h2>

我正在为我的项目构建一个用户管理系统,我想在登录用户个人资料后显示。按登录后,我应该被重定向到html page。这可行,但我不知道如何在HTML 页面中打印$_SESSION 的值,我只想在哪里或如何测试它并不重要,这样我就可以查看它是否有效并且我得到@ 987654326@。我没有找到解决方案,所以如果你能帮助我,我将不胜感激。

【问题讨论】:

  • html页面代码只是一个示例,没有问题。
  • "SELECT * FROM Users WHERE Email = '$email' AND password = '$password'" --- 请不要在现实世界的任何地方部署此代码!您以纯文本形式存储密码,并且容易受到 SQL 注入攻击。恶意用户可以轻松窃取每个人的密码。
  • 等我做完项目再修改。

标签: php html session user-management


【解决方案1】:

您已将电子邮件存储在会话变量中:

$_SESSION['user'] = $email;

因此,在您的其他 HTML 页面中,您只需回显以下内容:

// myAccount.html

<?php echo "Logged in user: ".$_SESSION['user']; ?>

【讨论】:

  • 假设 Apache 已将 .html 分配给 PHP 处理程序,否则它将是 myAccount.php
  • 感谢您的帮助,我修改了 myAccount.php 的扩展,并添加了您提到的代码并且它工作了:D
猜你喜欢
  • 2017-07-07
  • 1970-01-01
  • 2011-05-30
  • 2011-11-27
  • 2018-01-27
  • 2017-08-09
  • 2014-11-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多