Я работаю над системой валидации, в моей БД есть несколько msgs со значением = 0 (это значит, что они еще не приняты), поэтому я создал страницу, чтобы изменить значение на 1, если установлен флажок проверки.Получите переменную после выхода из цикла while
Вот код:
<?php
if (isset($_POST['valider']))
{
$reponse1 = db_query('UPDATE messages SET value = 1 WHERE id = ?', array($donneesmsg['id']));
echo "NSF validée";
}
if (isset($_POST['delete']))
{
$reponse1 = db_query('DELETE FROM messages WHERE id = ?', array($donneesmsg['id']));
echo "NSF supprimée";
}
$reponse = db_query('SELECT * FROM messages WHERE value = 0');
while ($donneesmsg = $reponse->fetch()) {
?>
<h5><?php echo $donneesmsg['Pseudo']; ?></h5>
<p class="text-center text-align"><?php echo $donneesmsg['Message']; ?></p>
<form class="form-inline" method="post" action="index.php?page=changeto1">
<label class="checkbox">
<input type="checkbox" name="valider" value="1">
Valider
</label>
<label class="checkbox">
<input type="checkbox" name="delete">
Supprimer
</label>
<input type="text" name="id" value="<?php echo $donneesmsg['id']; ?>">
<?php
}
?>
<br>
<br>
<button type="submit" class="btn">Envoyer</button>
</form>
Но у меня есть проблема, переменный $ donneesmsg [ «ID»] больше не существует, когда страница передается, так как переменная был определяемой первым в цикле в то время как ,
К сожалению, мне действительно нужен этот идентификатор, чтобы заставить мою систему работать. Как я могу получить этот идентификатор?
Что вы пробовали? Подумайте, ваша переменная прямо там, вы можете сделать что-нибудь с ней внутри цикла **, включая ** сохранение его на вспомогательном массиве вне цикла для последующего использования. –