如何使用一个提交按钮发送页面中所有表单的数据?

时间:2013-07-16 16:01:41

标签: php

这是我的index.php

<!doctype html>
<html>
<head>
    <title>welcome to vikash general shop</title>
    <link rel="stylesheet" type="text/css" href="css/table_styling.css">
</head>
    <body>
        <table>
            <tr>
                <td>Item</td>
                <td>Amount(kg)</td>
                <td>Amount(gm)</td>
            </tr>
            <tr>
                <td>Sugar</td>
                <td><form method="POST" action="process.php"><input type="text" name="sugar_amount_kg"/></form></td>
                <td><form method="POST" action="process.php"><input type="text" name="sugar_amount_gm"/></form></td>
            </tr>
            <tr>
                <td>Rice</td>
                <td><form method="POST" action="process.php"><input type="text" name="rice_amount_kg"/></form></td>
                <td><form method="POST" action="process.php"><input type="text" name="rice_amount_gm"/></form></td>
            </tr>
        </table>
        <form method="POST" action="process.php">
            <input type="submit" name="submit" value="submit" />
        </form>
    </body>
</html>

实际上我想使用一个无法正常工作的提交按钮发送页面中所有表单的数据。很明显因为提交按钮只发送自己的表单标签(非常自私:P)。所以我想知道如何使用一个提交按钮发送所有表格的数据 ...
或者如果您对我的代码有任何其他解决方案,那么请告诉我......

3 个答案:

答案 0 :(得分:4)

只需制作一张表格。用表格标签包裹你的表格,因为无论如何它都被process.php处理。

    <form method="POST" action="process.php">
    <table>
        <tr>
            <td>Item</td>
            <td>Amount(kg)</td>
            <td>Amount(gm)</td>
        </tr>
        <tr>
            <td>Sugar</td>
            <td><input type="text" name="sugar_amount_kg"/></td>
            <td><input type="text" name="sugar_amount_gm"/></td>
        </tr>
        <tr>
            <td>Rice</td>
            <td><input type="text" name="rice_amount_kg"/></td>
            <td><input type="text" name="rice_amount_gm"/></td>
        </tr>
    </table>
    <input type="submit" name="submit" value="submit" />
    </form>

答案 1 :(得分:2)

您不需要多次添加表单标记。只需将其包裹在输入字段中,并在其中添加action属性,如下所示:

<table>
    <form action="process.php" method="post">
        <tr>
            <td>Item</td>
            <td>Amount(kg)</td>
            <td>Amount(gm)</td>
        </tr>
        <tr>
            <td>Sugar</td>
            <td><input type="text" name="sugar_amount_kg"/></td>
            <td><input type="text" name="sugar_amount_gm"/></td>
        </tr>
        <tr>
            <td>Rice</td>
            <td><input type="text" name="rice_amount_kg"/></td>
            <td><input type="text" name="rice_amount_gm"/></td>
        </tr>
        <input type="submit" name="submit" value="submit" />
    </form>
</table>

然后您可以按照以下方式获取process.php中的输入:

if(isset($_POST['submit'])){ //checking if form was submitted
    $sugar_amount_kg = $_POST['sugar_amount_kg'];
    ...
}

希望这有帮助!

答案 2 :(得分:0)

这个问题已被问过几次。快速搜索,您将看到使用JS / jQuery执行此操作的方法。示例herehere

以某种形式进行操作确实可能更适合您的具体用途。