user12358512
user12358512

Reputation:

How to using If else for conditional <select> option in PHP?

The scenario is, I have 3 level user (Employer,Manager,Cashier), if the employer login the page, the employer just can see Manager and Cashier option in the select box;if the manager login the page, the manager just can see Cashier option in the select box

User level number I have stored in this variable $user_level, when the user login the id of the user will record in this variable $user_level. In the user value I have set the user level Employer id is 1, Manager id is 2, Cashier id is 3. For example, when the user level 1 (Employer) login the page, the option just can show Manager and Cashier option.When the user level 2 (Manager) login the page, the option just can Cashier option. My problem is how to change below the coding to if/else for conditional option ?

I have declared $user_level = $row['user_level'];

Below is my code:

    <div class="form-group col-lg-6">
                    <label class="control-label col-lg-4">Position<span style="color:red;">&nbsp;*</span></label>
                    <div class="col-lg-7">
                    <select class="form-control required" id="position" name="position">
                        <option value="">Please Select</option>
                        <option value="2">Manager</option>
                        <option value="3">Cashier</option>
                    </select>
                    <br>
                    </div>
                </div>  

Below the coding is check the user login current position(user level number),this part in the future will hidden:

    <div class="form-group col-lg-6">
                    <label class="control-label col-lg-4">Current Login User Level<span style="color:red;">&nbsp;*</span></label>
                    <div class="col-lg-7">
                    <input disabled type="text" class="form-control required" id="user_level" name="user_level" value="<?php echo $user_level; ?>">
                    </div>
                </div>

Below is my output example:

enter image description here

Hope someone can guide me to solve this problem. Thanks a lot.

Upvotes: 0

Views: 1716

Answers (1)

Raptor
Raptor

Reputation: 54212

You can add if-else logic inline with the options:

<?php if($user_level != 3) { ?>
<div class="form-group col-lg-6">
        <label class="control-label col-lg-4">Position<span style="color:red;">&nbsp;*</span></label>
    <div class="col-lg-7">
        <select class="form-control required" id="position" name="position">
            <option value="">Please Select</option>
            <?php if($user_level == 1) { ?>
               <option value="2">Manager</option>
            <?php } ?>
            <?php if($user_level == 1 || $user_level == 2) { ?>
                <option value="3">Cashier</option>
            <?php } ?>
        </select>
        <br>
    </div>
</div>
<?php } ?>

Updated for revised requirements.

Upvotes: 2

Related Questions