Могу ли я узнать, как отобразить sn (штатный номер) после того, как я выберу имя из раскрывающегося меню? Например, если я выберу имя «азиз» в раскрывающемся меню, в текстовом поле должно отображаться sn (номер сотрудника) азиза, которое равно «1001». И имя, и sn (штатный номер) должны быть сохранены в базе данных. Здесь я прикрепляю свой штатный стол, который включает имя и sn (штатный номер), и мой интерфейс системы: таблица персонала

my interface that I want to display after select name and display the staff number according to their name

Ниже мой код:

 <div class="col-md-6">
    <table width="567">
    <tr>
    <td><b><u>Equipment Details</u></b></td></tr>
    <tr><td width="146">Name:</td>
    <td width="409"><select name="staff" required>
        <option value="">--ALL--</option>
        <?php 
        $sql = "SELECT name FROM staff";
        $result = mysqli_query($connect, $sql);

        while($row = mysqli_fetch_array($result)){
        echo "<option value=\"".$row["name"]."\"";
        if($_POST['name'] == $row['name'])
        echo 'selected';
        echo ">".$row["name"]."</option>";
        }
        ?></select></td></tr> <!--name-->
    <tr><td>SN No:</td>
    <td><?php 
    $sql = "SELECT sn FROM staff WHERE staff = '$staff'";
    $result = mysqli_query($connect,$sql);
    while ($row = mysqli_fetch_array($result))
    {
    $snnum = $row['sn'];
    }
    ?><input type="text" name="sn" value="<?php echo $snnum ?>" required></td></tr><!--sn (staff number)-->
0
Raihan Nisreen 15 Мар 2021 в 06:10

1 ответ

Лучший ответ

Как говорит Кевин в комментарии, просто установите атрибут данных sn для выбора варианта и используйте изменение выбора. сначала установите sn для атрибута данных, подобного этому

echo '<option value="'.$row["name"].'" data-sn="'.$row["sn"].'" > '.$row["name"].' </option>';

И я использую jquery для выбора onchange

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script type="text/javascript">
     $(document).ready(function() {
         $('select[name$="staff"]').change(function() {
            var sn = $('select[name$="staff"]').find(':selected').data('sn');
            $('input[name$="sn"]').val(sn);
         });
     });
</script>

В этом разделе $('select[name$="staff"]').change(function() {}); он будет запущен, когда выбрано изменение имени персонала, найдет выбранный параметр и получит атрибут данных sn и сохранит его в var sn, после чего установите значение для {{X3} } с var sn.

Код будет выглядеть так

<tr>
    <td width="146">Name:</td>
    <td width="409">
        <select name="staff"  required>
            <option value="">--ALL--</option>
            <?php 
            $sql = "SELECT name,sn FROM staff";
            $result = mysqli_query($connect, $sql);
                while($row = mysqli_fetch_array($result)){
                    echo '<option value="'.$row["name"].'" data-sn="'.$row["sn"].'" > '.$row["name"].' </option>';
                }
            ?>
        </select>
    </td>
</tr> <!--name-->

<tr>
    <td>SN No:</td>
    <td><input type="text" name="sn" value="" required></td>
</tr><!--sn (staff number)-->

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function() {
        $('select[name$="staff"]').change(function() {
            var sn = $('select[name$="staff"]').find(':selected').data('sn');
            $('input[name$="sn"]').val(sn);
        });
    });
</script>
0
Fikri F 15 Мар 2021 в 04:01