1

I've made a system where the employee can view their applied leave status. I'm trying to make that applied leave status show up depending on whether or not the user is logged in.

Here's an example:

View My Leave

So the user that is logged in is John Doe, but for some reason I can see other applied leave by a different user. I only want John Doe to see his own applied leaves.

Here's the code I came up with:

<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 leaves.* FROM leaves INNER JOIN employee ON employee.id = leaves.user_id WHERE employee ON employee.id = leaves.user_id WHERE employee.username = $_SESSION["VALID_USER_ID"]");
                $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>

Unfortunately I'm getting Parse error: syntax error, unexpected '"'

on the following line:

$result = $database->prepare ("SELECT leaves.* FROM leaves INNER JOIN employee ON employee.id = leaves.user_id WHERE employee ON employee.id = leaves.user_id WHERE employee.username = $_SESSION["VALID_USER_ID"]");

I'm not sure what it is.

Here are my table schemas:

Employee table

Leaves table

agrm
  • 3,735
  • 4
  • 26
  • 36

1 Answers1

1

You will change the query as below and try it.

$result = $database->prepare ("SELECT leaves.* FROM leaves INNER JOIN employee ON employee.id = leaves.user_id WHERE employee ON employee.id = leaves.user_id WHERE employee.id = ".$_SESSION["VALID_USER_ID"]);
Siva
  • 1,481
  • 1
  • 18
  • 29
  • Thank you so much. All the applied leave details disappeared tho but yeah I guess that's a different problem. Thanks again –  Jan 20 '18 at 12:17