【问题标题】:How to colect data from dynamicaly created php table如何从动态创建的 php 表中收集数据
【发布时间】:2014-05-18 05:40:07
【问题描述】:

我是 php 和 webdevelop 的新手,所以我有一个简单的问题。

故事背景: 我在 PHP(表格)中有表格,我在其中保存礼物清单。 共有 3 列:编号、礼物描述和预订礼物的信息(如果没有人预订目标礼物,则输入文本文件允许预订礼物)。 在餐桌的最后会有一个地方提出你自己的礼物想法。

<?php
    db_connect();
    $result = mysql_query("SELECT GIFTS_ID, USER_DESCR, GIFT_DESCR FROM GIFTS");
    $array = array();
    while ($row_user = mysql_fetch_assoc($result))
        $array[] = $row_user;
    $howManyRows = mysql_num_rows($result);

    db_close();
?>

<form action="" method="post">
    table id="PersonList">
    <thead>
        <tr>
            <th>Lp </th>
            <th>Gift Description </th>
            <th>Reservation </th>
        </tr>
    </thead>
    <tfoot>
        <tr>
            <th colspan="2">
            <input type="submit" name="send" value="Send">
            </th>
        </tr>
    </tfoot>
    <tbody>
        <?php
            foreach ($array as $gifts) {
                    echo '<tr>';
                echo    '<td class="number">' . "{$gifts['GIFTS_ID']}" . '</td>';
                echo    '<td class="description">' . "{$gifts['GIFT_DESCR']}" . '</td>';
                echo    '<td class="reservation">' . selectWhatToDisplay("{$gifts['USER_DESCR']}") . '</td>';
                echo '</tr>';
            }
        ?>
    </tbody>
 </table>
</form> 

<?php
function selectWhatToDisplay($USER_DESCR) {
    if ($USER_DESCR == 'N') 
    {
        return '<input type="text" name="reserv_data[]">';
    } 
    else 
    {
        return $USER_DESCR;
    }      
}
?>

正如您所见,用户打开网站时会动态创建行。

问题: 我希望允许用户在单个“发送”操作中预订多个礼物,但我不知道如何从动态创建的表中收集数据:目标是哪些行,单个文本字段中的数据是什么。

---已编辑--- 我的问题是,现在我有多个名为“reserv_data []”的 id 作为输入字段。到达这种字段的正常方法是 $_POST['name_of_field']。现在我不知道如何获取(即第 5 个输入文件 - 第 5 个表示来自表的第 5 行)。

【问题讨论】:

    标签: php mysql web webpage


    【解决方案1】:

    您可以使用 javascript 选择所有输入字段,然后检查其中哪些具有足够长的值(我猜比 0 长)。

    一旦有了输入数组,您就可以将它们组织成对服务器的良好 ajax 调用。

    您的所有输入都可以这样构造:

    &lt;input data-bookID="BOOK_ID" type="text"&gt;

    这样你就拥有了你需要的所有信息,BOOK_ID 可以在你构建表时动态生成。

    我希望我能正确理解你的问题:P

    【讨论】:

    • 嗯...可能我问错了问题。我不想使用 JS。我认为它只能在 PHP 中解决。我的问题是,现在我有多个名为“reserv_data []”的 id 作为输入字段。到达这种字段的正常方法是 $_POST['name_of_field']。现在我不知道如何获取(即第 5 个输入文件 - 第 5 个表示来自第 5 行表)。
    • reserv_data[] 只是一个数组,您应该能够执行 $_POST['name_of_field'][5] 之类的操作来获取第 5 个元素。
    猜你喜欢
    • 2014-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-04
    • 1970-01-01
    • 2013-06-28
    • 1970-01-01
    • 2013-01-20
    相关资源
    最近更新 更多