你如何传递表格中的其他信息?

时间:2011-09-13 01:30:43

标签: php html html-form

我有以下PHP代码:

echo "<form name='CLChange' method='post' action=''>";
echo "<td><select name='NewClearanceLevel'>\n";
for($i = 1; $i < $ClearanceLevel; $i++)
{
    echo "<option value='" . $i . "'>" . $i . "\n";
}
echo"<input type='submit' value='Change'></td></form>";

我希望能够传递代表当前表行的其他值(这会创建一个表,我可以使用该表对单个用户进行更改)。每个用户都有一行。看起来大致如下:

User          ID      Clearance Level    New Clearance Level

User 1        1       4                  (Drop down list and submit button)

User 2        2       3                  (Drop down list and submit button)

User 3        3       1                  (Drop down list and submit button)

每个下拉列表和按钮都是一个单独的表单。

我该怎么做才能传递一个额外的值来知道我在说哪个用户?或者还有其他方法可以知道传递的表单名称是什么?

3 个答案:

答案 0 :(得分:5)

使用hidden输入类型:

<input type="hidden" name="id" value="..." />

答案 1 :(得分:1)

试试这个:

echo "<form name='CLChange' method='post' action=''>";
echo "<input type='hidden' name='userId' value='" . $userId . "' />";
echo "<td><select name='NewClearanceLevel'>\n";
for($i = 1; $i < $ClearanceLevel; $i++)
{
    echo "<option value='" . $i . "'>" . $i . "\n";
}
echo"<input type='submit' value='Change'></td></form>";

答案 2 :(得分:0)

隐藏的表单元素是一个经过验证的真实解决方案,但是您也可以将一些url params添加到表单操作目标:

echo "<form name='CLChange' method='post' action='yourscript.php?uid=$userId'>";

当然,你在yourscript.php中检索它:

$userid = (int)$_GET['uid'];