Как мне открыть модальное окно со ссылкой ?id=, чтобы внести изменения в базу данных, не переходя на другую страницу?

Существует такой код, как этот

  <td>
    <a href="includes/update.php?id=<? echo $user['id']?>" class="edit">Изменить</a>
  </td>

Откроется страница для изменения данных в таблице Mysql. Но я хочу, чтобы при нажатии открывалось модальное окно. Вот готовый код модального окна с использованием кнопки

<button tupe="open" onclick="window.myDialog.showModal()" class="editbtn">Изменить</button>
<dialog id="myDialog" class="modal">
  <div class="reg">
    <h6>Изменить данные</h6>
    <form method="POST">
      <?
       include('../../includes/db.php');
       $id = $_GET['id'];
       $query = mysqli_query($connect, query: "SELECT * from `users` where ID='$id'");
       while($row = mysqli_fetch_array($query)) {
      ?>
      <div class="reg-box">
        <input type="text" value="<? echo $row["lastname"]?>" name="lastname" placeholder="Фамилия">
      </div>
      <div class="reg-box">
        <input type="text" value="<? echo $row["name"]?>" name="name" placeholder="Имя">
      </div>
      <div class="reg-box">
        <input type="text" value="<? echo $row["fathername"]?>" name="fathername" placeholder="Отчество">
      </div>
      <div class="reg-box">
        <input type="number" value="<? echo $row["code"]?>" name="code" placeholder="Личный номер">
      </div>
      <div class="reg-box">
        <input type="text" value="<? echo $row["username"]?>" name="username" placeholder="Логин">
      </div>
      <div class="reg-box">
        <input type="number" value="<? echo $row["password"]?>" name="password" placeholder="Пароль ()">
      </div>
      <? } ?>    
      <button tupe="reg" class="btn">Изменить</button>
    </form>
  </div>
  <style type="text/css">
    dialog {
      margin-inline: auto;
      margin-block-start: 120px;
      background: transparent;
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.211);
      border: none;
      border-radius: 1rem;
    }
    dialog::backdrop {
      background-color: rgba(0, 0, 0, 0.2);
    }
  </style>
</dialog>

Помогите мне реализовать это, так как я все еще не очень хорошо в этом разбираюсь.
Мне нужна готовая рабочая версия моего кода.

crafter.mr98@gmail.com 03.04.2025 в 20:43

Ответы (0)


Добавить новый ответ