Я все делал неправильно, я обычно брал значение из сегмента URI и не понимал, что это не идеальный способ. Поэтому я изменил свой подход, и теперь у меня есть все через $ _POST. Я не уверен, правильно ли я делаю, может кто-нибудь пролить свет? Мое представление содержит элементы списка табличных данных, извлеченные из БД. Каждый элемент имеет две ссылки: «Просмотр» и «Удалить». Код работает, но ему было интересно, можно ли его лучше кодировать. Я забыл, что имя формы не было уникальным, поэтому, когда я собирался удалить запись, она всегда удаляла самую новую запись (было установлено последнее скрытое поле).
myview.php (фрагмент)
<?php foreach($records as $record): ?>
<form method="POST" name="myform<?php echo $location->id;?>" action="/location/delete">
<a href="/location/view/<?php echo $location->id;?>">View</a> <a href="#" onclick="document.myform<?php echo $location->id;?>.submit();">Delete</a>
<br />
<input type="hidden" name="location_id" value="<?php echo $location->id;?>">
</form>
<?php endforeach ?>