Итак, мой вопрос заключается в следующем:
Я делаю цикл foreach, и он генерирует список ссылок. Каждая ссылка содержит JavaScript, который отправляет форму. Однако я хочу прикрепить к КАЖДОЙ ссылке ссылку, чтобы я мог получить переменную $ _POST, чтобы увидеть, по какой ссылке щелкнули.
Я попытался цикл foreach, а затем что-то вроде:
foreach ($matches as $match) {
?>
<div class="containerbla">
<form>
<h3><a href="javascript:{}" onclick="document.getElementById('matchesform').submit(); return false;"><?php echo $match->name?></a></h3>
<?php echo $match->id; ?>
<input type="hidden" name="matchid" value="<?php echo $match->id; ?>">
</form>
</div>
<?php
}
Он показывает правильный список имен пользователей и правильный идентификатор пользователя справа ниже. Но когда я нажимаю на пользователя, я всегда получаю ПОСЛЕДНИЙ идентификатор пользователя в скрытом поле, отправляемом в мой php-файл view-messages.
Как я могу решить это?
foreach ($matches as $key=>$match) { ?>
<div class="containerbla">
<form>
<h3><a href="javascript:{}" onclick="var poop = document.getElementById('matchesform'); poop.insertAdjacentHTML('<input type=\"hidden\" name=\"poop\" value=\"<?php echo $key; ?>\"/>'); poop.submit(); return false;"><?php echo $match->name?></a></h3>
<?php echo $match->id; ?>
<input type="hidden" name="matchid" value="<?php echo $match->id; ?>">
</form>
</div>
<?php
}
Тогда вы сможете получить индекс, используя $matches[$_POST['poop']];
Я вижу, что вы уже создаете новый ввод, но не вводите его в правильную форму, поэтому он не отправляется.
Других решений пока нет …