Я создаю свое первое приложение php и сталкиваюсь с проблемой, как мне попытаться отредактировать запись sql. Я планировал попытаться открыть модальное окно для редактирования.
Когда я выбираю ссылку редактирования, чтобы открыть модальное окно, переменная говорит, что она не определена. Я думаю, это потому, что Modal и переменная добавляются в DOM до того, как я нажимаю ссылку для редактирования, и переменная никогда не устанавливается. Как мне обойти это?
<?php
$sql = "SELECT id, image, name, score, points FROM teams";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)){
$teams_id = $row["id"];
$teams_image = $row["image"];
$teams_name = $row["name"];
$teams_score = $row["score"];
$teams_points = $row["points"];
// echo "id: " . $teams_id . " image path: " . $teams_image . " name: " . $teams_name . " score " . $teams_score . " points " . $teams_points . "</br>";
echo "<div class='row'>";
echo "<div class='row oval'>";
echo "<div class='col-4 flag {$teams_image}'>";
echo "</div>";
echo "<div class='col-8 text'>";
echo "<p>{$teams_name}</p>";
echo "</div>";
echo "</div>";
// edit and delete button
echo "<a href='add_teams_working.php?edit = {$teams_id}' class='btn btn-outline-light btn-sm ml-4 align-self-center' data-toggle='modal' data-target='#editModal'>edit</a>";
echo "<button class='btn btn-outline-light btn-sm ml-1 align-self-center'>delete</button>";
echo "</div>";
}
}else {
echo "No teams added yet";
}
?>
<!-- SET VARIABLE for MODAL -->
<?php
if (isset($_GET['edit'])) {
$edit_id = $_GET['edit'];
$query = "SELECT * FROM teams WHERE id = $edit_id ";
$select_team = mysqli_query($conn, $query);
while($row = mysqli_fetch_assoc($select_team)) {
$edit_id = $row['id'];
$edit_image = $row['image'];
$edit_name = $row['name'];
}
}
?>
Вот модальный, если нужно.
<div class = "modal fade" id = "editModal" tabindex = "-1" aria-labelledby = "editModalLabel" aria-hidden = "true">
<div class = "modal-dialog" role = "document">
<div class = "modal-content">
<div class = "modal-header">
<h3>Edit <?php echo $edit_name; ?> </h3>
</div>
<div class = "modal-body">
<?php echo $edit_name; ?>
<?php echo $edit_image; ?>
</div>
<div class = "modal-footer">
<button type = "button" class = "btn btn-secondary" data-dismiss = "modal">Close</button>
<button class = "btn btn-primary" type = "button">Save Changes</button>
</div>
</div>
</div>
</div>
У вашего модального окна должен быть атрибут id, также такое же значение должно использоваться в атрибуте переключения данных кнопки.
Я немного отредактировал вопрос и все еще ищу помощи.
В HTML-части должно быть еще одно закрытие </div>.
Я считаю 4 открывающих div и 4 закрывающих div. Но мне интересно добавить переменную в модальный. Как только я нажимаю кнопку редактирования, и появляется модальное окно..... Я получаю сообщение об ошибке, что переменная "edit_name" не определена.
6 открывающих и только 5 закрывающих тегов (div).
если вы имеете в виду модальный .. Я добавил закрывающий div.
Хорошо, тогда имейте в виду, что если вы не хотите использовать javascript, вам нужно по одному модальному модулю для каждой кнопки с уникальным идентификатором.
Наконец-то я понял, что искать в гугле. «Добавить динамический контент в модальный». Этот поиск дал мне информацию, которая мне нужна






Во-первых, я рекомендую экранировать php, например: <?php PHP_CODE ?> HTML_CODE <?php PHP_CODE ?>, чтобы избежать повторов. И да, ваши идентификаторы должны быть уникальными.