Отключить кнопку отправки, если поле ввода пустое - PullRequest
0 голосов
/ 25 апреля 2018

** Здравствуйте ... я знаю, что мой тип вопроса был дан ответ на разные вопросы раньше, но я попробовал их все .. ни один не работал! Поэтому, пожалуйста, посмотрите на мою проблему.

Я имеютаблица, содержащая поля ввода формы, откуда значения берутся из базы данных. Я не хотел, чтобы значения редактировались. Так что использовал «только для чтения».Но проблема в том, что при проверке элемента браузера, когда удалено только чтение, значение может быть отредактировано, а пустой ввод может быть отправлен !!!Поэтому я хочу отключить редактирование или, по крайней мере, хочу отключить кнопку отправки, если поле ввода пустое. **

Код таблицы:

 <?php
        if (isset($_POST['show'])) {

            $class = $_POST["Class"];
            $sql = "SELECT * FROM students WHERE Class='$class'  ORDER BY Roll ";
            $result = $conn->query($sql);

            if ($result->num_rows > 0) {
                // output data of each row
                ?>


                    <form action="" method="POST">
                        <table class="table table-bordered table-hover" style="width: 85%;text-align: center">

                            <tr >
                                <th>Roll</th>
                                <th>Student's Name</th>
                                <th>Attendance</th>


                            </tr>
                            <?php while ($row = $result->fetch_assoc()) { ?>
                                <tr>
                                    <td><input value="<?php echo $row['Roll']; ?>" name="Roll[]" readonly required=""/></td>
                                    <td><input value="<?php echo $row['Name']; ?>" name="Name[]" readonly required=""/></td>
                                    <td><select name="Status[]">
                                            <option value="0">0</option>
                                            <option value="1">1</option>
                                        </select></td>

                                </tr>

                            <?php } ?>

                        </table>
                        <input type="submit" name="save" value="Save" style="width: 50%;margin-left: 20%">

                    </form>

                <?php
            } else {
                $message = "Sorry! No result!";
                    echo "<script type='text/javascript'>alert('$message');</script>";
            }
            $conn->close();
        }
        ?>

Код вставки:

<?PHP
        if (isset($_POST["save"])) {

        foreach ($_POST["Roll"] as $rec => $value) {
                $Roll = $_POST["Roll"][$rec];

                $Name = $_POST["Name"][$rec];
                $Status = $_POST["Status"][$rec];
                $Date = date('Y-m-d');
                $sql = "INSERT INTO `attendance`(`id`, `Date`, `Roll`, `Name`, `Status`) VALUES ('','$Date','$Roll','$Name','$Status')";


            }
            if ($conn->query($sql) === TRUE) {
                    $message = "Saved !";
                    echo "<script type='text/javascript'>alert('$message');</script>";
                } else {
                    echo "Error: " . $sql . "<br>" . $conn->error;
                }
        }
        ?>

Ответы [ 2 ]

0 голосов
/ 25 апреля 2018

Я отредактировал часть вашего кода, чтобы запретить редактирование.Я надеюсь, что это послужит вашей удаче.я использовал отключенный атрибут на входных тегах.

  <tr>
                                <td><input value="<?php echo $row['Roll']; ?>" name="Roll[]" disabled/></td>
                                <td><input value="<?php echo $row['Name']; ?>" name="Name[]" disabled/></td>
                                <td><select name="Status[]">
                                        <option value="0">0</option>
                                        <option value="1">1</option>
                                    </select></td>

                            </tr>
0 голосов
/ 25 апреля 2018

это правильный способ не вводить пустое поле

           $class = $_POST["Class"];
          if(!empty($class)) {
            $sql = "SELECT * FROM students WHERE Class='$class'  ORDER BY DESC or ASC";
            $result = $conn->query($sql);

            if ($result->num_rows > 0) {
                // output data of each row
 }
}
                ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...