0

我有一个将数据从 mysql 表填充到 html 表中的代码。我在每一行的末尾还有一个文本框和一个按钮。我想将行中的所有变量(包括文本框中的文本)发送到 update.php。无法以某种方式做到这一点。这是我正在尝试的代码。请帮忙。我可以通过 GET 方法发送它。但我想使用 POST。

<?php
require 'config.php';
mysql_connect ($dbhost, $dbusername, $dbuserpass);
mysql_select_db($dbname) or die('Cannot select database');
$query = "SELECT * FROM cust_info;";
$result = mysql_query($query) or die(mysql_error());

echo "</br>";
echo "<table border='1'>
<tr>
<th>Pop Code</th>
<th>Open_Date</th>
<th>Maturity_Date</th>
<th>Amount</th>
<th>Balance</th>
<th>Collection Amount</th>
</tr>";

while($row1 = mysql_fetch_array($result))
  {
  echo "<div class=\"addform\"><form method='post' action=\"update.php?upd=".$row1['pop_code']."\">\n";
  echo "<tr>";
  echo "<td>" . $row1['pop_code'] . "</td>";
  echo "<td>" . $row1['open_date'] . "</td>";
  echo "<td>" . $row1['mat_date'] . "</td>";
  echo "<td>" . $row1['depoamt'] . "</td>";
  echo "<td>" . $row1['balance'] . "</td>";
  echo "<td>" . "   <input type=\"text\" name=\"amount\"/>\n" . "</td>";
  echo "<td>" . "   <input type=\"image\" src=\"images/update.png\" alt=\"Update Row\" class=\"update\" title=\"Update Row\">\n" . "</td>";
  echo "</tr>";
  echo "</form></div>";
  }
echo "</table>";
?> 
4

3 回答 3

5

将您的表格代码更改为如下所示:

echo "<td><input type='hidden' name='pop_code' value='".$row1['pop_code']."'>" . $row1['pop_code'] . "</td>";

看起来您的代码实际上并没有发送任何内容,只是将其显示在页面上。这将显示它并在提交表单时发送一个隐藏字段。

编辑:另一种方法是在循环之外的页面上有一个表单,并让按钮运行一个 javascript 函数,将数据复制到表单并提交表单。您目前拥有它的方式可能更容易,但是这样的 javascript 将能够轻松地从用户/页面中获取其他信息,并通过单个表单将其发送到下一页。

于 2012-09-11T08:47:15.293 回答
2

您可以隐藏这些字段:

  echo "<td><input type='hidden' name='pop_code' value='" . $row1['pop_code'] . "' />" . $row1['pop_code'] . "</td>";
  echo "<td><input type='hidden' name='open_date' value='" . $row1['open_date'] . "' />" . $row1['open_date'] . "</td>";
于 2012-09-11T08:48:31.753 回答
-1

您的 HTML 已损坏,<table>仅允许<thead>,和作为直接子级,请先尝试修复此问题<tbody>,因为这将导致您的浏览器自动关闭标签<tfoot><tr>

于 2012-09-11T08:49:37.190 回答