php - 根据登录用户查看休假详细信息

标签 php html mysql database phpmyadmin

我做了一个员工信息系统,他们可以在其中申请休假并查看他们的休假状态。问题是当员工想要查看他的休假时,他可以看到所有申请休假的人。

这是一个例子,登录的用户是 Jane Smith,当我去查看我的叶子时,这是我看到的:

view leave

所以基本上我试图根据登录的用户显示休假。而且我的系统中确实有两个表,employee 和 leaves。

员工表: Employee Table

叶表: Leaves Table

我有一个为我的员工信息系统做的 session 代码。我想我需要加入我的 session 代码和我查看我的叶子代码来回答我的问题。问题是,我不知道如何将两者结合起来。

下面是我为员工信息系统所做的 session 代码:

<?php

session_start();
ob_start();

//Include the database connection file
include "database_connection.php"; 

//Check to be sure that a valid session has been created
if(isset($_SESSION["VALID_USER_ID"]))
{

    //Check the database table for the logged in user information
    $check_user_details = mysql_query("select * from `employee` where `username` = '".mysql_real_escape_string($_SESSION["VALID_USER_ID"])."'");
    //Validate created session
    if(mysql_num_rows($check_user_details) < 1)
    {
        session_unset();
        session_destroy();
        header("location: login.php");
    }
    else
    {

    //Get all the logged in user information from the database users table
    $get_user_details = mysql_fetch_array($check_user_details);

    $user_id = strip_tags($get_user_details['id']);
    $fullname = strip_tags($get_user_details['fullname']);
    $username = strip_tags($get_user_details['username']);
    $email = strip_tags($get_user_details['email']);
    $address = strip_tags($get_user_details['address']);
    $gender = strip_tags($get_user_details['gender']);
    $contact = strip_tags($get_user_details['contact']);
    $user_access_level = strip_tags($get_user_details['user_levels']);
    $passwd = strip_tags($get_user_details['password']);
    $picture = strip_tags($get_user_details['picture']);
    $sickleave = strip_tags($get_user_details['sickleave']);
    $vacationleave = strip_tags($get_user_details['vacationleave']);
?>

这是我的休假代码:

<div class="container">
<div class="page-header">
<h3>My Leaves</h3>
            <div class="table-responsive">
                <table class="table">
                    <tr>
                        <th>Employee Name</th>
                        <th>Phone</th>
                        <th>Email</th>
                        <th>From</th>
                        <th>To</th>
                        <th>Reason</th>
                        <th>Status</th>
                    </tr>
                <?php
                    include ('database.php');
                    $result = $database->prepare ("SELECT * FROM leaves order by leaveno DESC");
                    $result ->execute();
                    for ($count=0; $row_message = $result ->fetch(); $count++){
                ?>
                    <tr>
                        <td><?php echo $row_message['full_name']; ?></td>
                        <td><?php echo $row_message['phone']; ?></td>
                        <td><?php echo $row_message['email']; ?></td>
                        <td><?php echo $row_message['fromdate']; ?></td>
                        <td><?php echo $row_message['todate']; ?></td>
                        <td><?php echo $row_message['reason']; ?></td>
                        <td><?php echo $row_message['status']; ?></td>
                    </tr>
                    <?php   }   ?>

                    </table>

                    <a href="home"><button type="button" class="btn btn-primary"><i class="glyphicon glyphicon-arrow-left"></i> Back</button></a>   
                </div>
            </div>
        </div>  
    </div>
</div>

正如我所说,我不知道如何合并这两个代码。我知道外面有很多教程,但我真的很难理解它们。

我还知道 session 代码中的 mysql 已被弃用。我有计划在未来改变它们。与此同时,我必须弄清楚如何做到这一点。任何帮助将不胜感激。

最佳答案

由于您将登录用户的用户名存储在 session 变量 $_SESSION["VALID_USER_ID"] 中,您可以在 session 激活之前使用它。您可以在离开 View 代码中使用它。

在您留下查看代码时,使用此代码:

$stmt = $conn->prepare("SELECT leaves.* FROM leaves INNER JOIN employee ON employee.id = leaves.user_id WHERE employee.username = ?");
$stmt->bind_param("s", $_SESSION["VALID_USER_ID"]);

这样会得到用户名为$_SESSION["VALID_USER_ID"]的用户的所有请假申请

关于php - 根据登录用户查看休假详细信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48353864/

相关文章:

javascript - 文本输入值,如选项标签

javascript - 移动菜单下拉

Javascript 弹出窗口 - 在 FF 和 Chrome 中有效,在 IE 中失败

java - 在 php/java/mysql 中不能有正确的 UTF-8 字符集

mysql - 计算同一个表mysql中条目的平均值

php - 重置页脚的页码 mpdf

php - 通过 mktime 查找所有月份

mysql - 简单的MySQL连接问题

php - 给定一个值表,在 "deal"中找到最好的 "group buy"

php - 使用 HTML 表单更新多个 MySQL 表