Отправьте определенный счетчик внутри цикла while на другую страницу

У меня есть несколько строк таблицы внутри цикла while, все строки - это данные из моей базы данных, каждая строка имеет кнопку отправки. Я хочу опубликовать определенные данные на другой странице, например, если я нажму submit_3, я хочу опубликовать все данные строки 3 на otherpage.php, но, как я пробовал, всегда используется последняя строка.

Например, у меня есть 25 строк, затем я отправляю кнопку 3, и она будет публиковать всю информацию из строки 25.

print '<form method = "POST" action = "edit.php" name = "action">';
//print '<input type = "hidden" value = "'.$imId.'" name = "imId">';
print '<div class = "tbl-content">';
print '<table cellpadding = "0" cellspacing = "0" border = "0">';
print '<tbody>';

$querySelect = "select hersteller, name, kaufDatum, category, ablaufDatum, imID, details from inventoryManager ";
$querySelect .= $orderBy;

error_log( "SQL2:" . $querySelect . "<br>", 3, "C:/Control/log/debug/dp.html" );
$resultSelect = db_query( [ $querySelect ] );

while ( ( $row = mysql_fetch_array( $resultSelect ) ) ) {
    $manufacturer   = $row[ hersteller ];
    $name           = $row[ name ];
    $buyDate        = $row[ kaufDatum ];
    $selectCategory = $row[ category ];
    $expireDate     = $row[ ablaufDatum ];
    $imId           = $row[ imID ];
    $details        = $row[ details ];

    print '<tr>';
    print "<td>$manufacturer</td>";
    print "<td>$name</td>";
    print "<td>$buyDate</td>";
    print "<td>$selectCategory</td>";
    print "<td>$expireDate</td>";
    //error_log("imIdCheck#1:".$imId."<br>",3,"C:/Control/log/debug/dp.html");
    print '<td><input type = "submit" name = "edit_' . $imId . '" value = "Bearbeiten" class = "button2 button3"></td>';
    print '</tr>';
}
print '</tbody>';
print '</table>';
print '</div>';
print '</form>';

На другой странице я выбираю все данные с помощью $imId, но каждый раз, когда я нажимаю кнопку отправки, даже если это submit_1, я получаю последний возможный шаг. Что я должен включить, чтобы он отправлял данные выбранной строки?

Обновлено: часть HTML-кода после реализации предложения иметь кнопку:

<form method = "POST" action = "edit.php" name = "action">
<div class = "tbl-content">
<table cellpadding = "0" cellspacing = "0" border = "0">
<tbody>
   <tr>
      <td>test</td>
      <td>TestName</td>
      <td>2019-03-23</td>
      <td></td>
      <td>2019-03-22</td>
      <input type = "hidden" value = "2" name = "imId">
      <td>
         <button type = "submit" name = "id" value = "2" class = "button2 button3">Bearbeiten</button>
      </td>
   </tr>
   <tr>
      <td>TestHersteller</td>
      <td>TestName</td>
      <td>2019-03-31</td>
      <td></td>
      <td>2019-03-31</td>
      <input type = "hidden" value = "3" name = "imId">
      <td>
         <button type = "submit" name = "id" value = "3" class = "button2 button3">Bearbeiten</button>

Комментарии не для расширенного обсуждения; этот разговор был перешел в чат.

Samuel Liew 09.04.2019 11:56
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
1
252
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если у вас есть ОДНА форма, то мое предложение о том, чтобы именованная кнопка отправки отправляла идентификатор, будет работать, если вы удалите скрытое поле. Убедитесь, что вы пишете imID так, как вы читаете, и записываете его в php, и щелчок по каждой кнопке отправит идентификатор в значении нажатой кнопки на сервер.

<button type = "submit" name = "imID" value = "'.$imId.'" class = "button2 button3">Bearbeiten/button>

Так:

<form method = "POST" action = "edit.php" name = "action">
  <div class = "tbl-content">
    <table cellpadding = "0" cellspacing = "0" border = "0">
      <tbody>
        <tr>
          <td>test</td>
          <td>TestName</td>
          <td>2019-03-23</td>
          <td></td>
          <td>2019-03-22</td>
          <td>
            <button type = "submit" name = "imID" value = "2" class = "button2 button3">Bearbeiten</button></td>
        </tr>
        <tr>
          <td>TestHersteller</td>
          <td>TestName</td>
          <td>2019-03-31</td>
          <td></td>
          <td>2019-03-31</td>
          <td>
            <button type = "submit" name = "imID" value = "3" class = "button2 button3">Bearbeiten</button>

            ....

Другие вопросы по теме