将while循环中的特定计数器发布到另一页[重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

我在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>
php html
1个回答
2
投票

如果您有一个表单,那么如果您删除隐藏字段,我建议使用命名提交按钮发送ID将会起作用。确保你按照你在php中读取和写入的方式拼写imID,然后点击每个按钮就会将点击按钮的值中的ID发送到服务器

<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>

            ....
© www.soinside.com 2019 - 2024. All rights reserved.