При нажатии кнопки «Отправить» на модальной веб-форме начальной загрузки содержимое не добавляется в базу данных. - PullRequest
0 голосов
/ 22 апреля 2019

Используя загрузочные модалы, я создал веб-форму, которая собирает некоторую информацию о отработанных часах сотрудника и должна вставить ее в базу данных. Код работает нормально, когда не в модальном режиме, но как только я вставляю код в модальный режим, когда вы нажимаете кнопку «Отправить», модальное отклоняется, и содержимое формы никогда не попадает в базу данных. Что-то мне не хватает?

<!-- Modal -->
<div class="modal fade" id="submit-time" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLabel">Submit Hours for <?php echo htmlspecialchars($_SESSION["username"]); ?></h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">

<?php
/**
* Use an HTML form to create a new entry in the
* timeclock table.
*
*/
if (isset($_POST['submit'])) {
    require "config.php";
    require "common.php";
    try {
        $connection = new PDO($dsn, $username, $password, $options);
        $new_user = array(
            "employee_id" => $_POST['employee_id'],
            "date" => $_POST['date'],
            "hours" => $_POST['hours'],
            "comments" => $_POST['comments'],
            "activity_id" => $_POST['activity_id']
        );
        $sql = sprintf("INSERT INTO %s (%s) values (%s)",
                        "timesheet",
                        implode(", ", array_keys($new_user)),":" . implode(", :", array_keys($new_user)));
        $statement = $connection->prepare($sql);
        $statement->execute($new_user);
    } catch(PDOException $error) {
        echo $sql . "<br>" . $error->getMessage();
    }
}
?>
<?php if (isset($_POST['submit']) && $statement) { ?>
<blockquote><?php echo $_POST['employee_id']; ?> successfully added.</blockquote>
<?php } ?>
<h2>Submit Hours for <?php echo htmlspecialchars($_SESSION["username"]); ?> </h2>
<form method="post" enctype="multipart/form-data">
    <label for="employee_id">employee_id</label>
    <input type="text" name="employee_id" id="employee_id" value="<?php echo htmlspecialchars($_SESSION["id"]); ?>" readonly><br>
    <label for="date">date</label>
    <input type="text" name="date" id="date"><br>
    <label for="hours">hours</label>
    <input type="text" name="hours" id="hours"><br>
    <label for="comments">comments</label>
    <input type="text" name="comments" id="comments"><br>
    <label for="activity_id">activity_id</label>
    <select id="activity_id" name="activity_id"> <br>
        <option value="1">Shop Hours</option>
        <option value="2">Show Hours</option>
    </select>
    <input type="submit" name="submit" class="btn btn-default" value="submit">
</form>
<?php require "templates/footer.php"; ?>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...