Ввод $_POST не достигает страницы обработчика

#php #html

Вопрос:

у меня есть форма, в которой скрытый ввод называется id, при отправке он переходит на страницу обработчика, которая фильтрует другие формы и решает, что делать с помощью оператора switch, эта форма должна вызывать функцию класса через обработчик и отправлять идентификатор в параметр функции, но ввод идентификатора не доходит до обработчика, я проверил по echo $id и ничего не отображается, поэтому я уверен, что идентификатор не отправляется в параметр функции, где ошибка, которую я не могу найти, я потратил два часа на ее поиск.

форма

 function showPassengerRides($db)
{
    
    //fetching the data from database
    $row=$stmt->fetchAll();

   if($row)   
   { 
        
      foreach ($row as $stmt):?>
        
        <form action="rideHandler.php" method="POST" class="rides" >
         //echoing data from database
            
          <input type = "hidden" name = "id" value = "<?=$stmt['id'] ?>" />
           //i echoed here and it worked, so i'm sure the problem is not from the SQL statement 

          <button class="delete-button" name="formSubmit" value="delete">Delete</button>
                    
       </form>               
                   
                    
 <?php } 
     
 

страница обработчика

 switch ($_POST['formSubmit']) {
    
case 'delete':

$id = $_POST['id'];
   //i echoed here but nothing showed up
    $obj = new databaseUpdate();
    $obj->deleteReservation($id, $db);
break;

}
 

Комментарии:

1. Попробуйте еще немного отладить: например, поместите var_dump($_POST); в первую строку файла обработчика и посмотрите, что на самом деле отправляется в него

2. это показало мне следующее : массив (размер=2) ‘id’ => строка ’24’ (длина=2) ‘formSubmit’ =>> строка ‘удалить’ (длина=18), поэтому она дошла до обработчика, но я не могу понять, почему она не повторяется или не отправляется в функцию

3. Выполняет switch ли казнь? Вводит ли он команду «Удалить case «? На множество вопросов вы можете ответить с помощью эха.