【问题标题】:How to create several records in only one dynamic form?如何仅以一种动态形式创建多个记录?
【发布时间】:2011-02-17 09:42:54
【问题描述】:

请帮助我解决一个简单的 PHP 疑问。

我有一个简单的表格:


人员:标签>


添加更多

形式>

每次用户单击 Add More 时,将使用 jQuery 动态创建两个新的输入字段。这可以在同一个表单中执行多次。


人员:标签>


添加更多

形式>

每一对(姓名和姓氏)都应在我的数据库中创建记录。

两个问题:
1)输入ID的最佳选择是什么?附加计数器是最佳选择吗?
2)我如何在后端使用php处理它?

如果您需要更多信息,请告诉我。

提前致谢。

【问题讨论】:

    标签: php forms dynamic arrays


    【解决方案1】:

    这是一个必须使用 AJAX 的典型场景...有几个教程将教您如何将 AJAX 与 JQuery 一起使用。关于你的问题...

    1) 输入 id 的最佳选择是什么?附加一个计数器是最好的选择?我认为你最好的选择是首先使用 ajax 在数据库中创建元素并检索创建的记录的 ID。然后,一旦您使用该 ID 来识别 HTML 视图中的元素。

    2) 如何在后端使用 php 处理它? http://www.google.com/search?q=tutorial+jquery+ajax+php

    【讨论】:

    • 好的。也许我不清楚我的要求,用户只会提交一次..但他们可能有一对(姓名/姓氏)或 20 对。如何在 php 端处理这个问题?
    【解决方案2】:

    您的帖子中丢失了一些代码。你的表单需要一个方法,可能是 POST。

    不过,最好的选择是创建以 [] 结尾的同名输入:

    <input type="text" name="firstname[]" value="Fred" />
    <input type="text" name="firstname[]" value="John" />
    

    PHP 会将其视为包含此类元素的数组:

    <?php
    $_POST['firstname'][0] // Fred
    $_POST['firstname'][1] // John
    ?>
    

    也就是说,如果您为所有记录提交一次表单。如果您想立即保存每条记录,请 google 获取 ajax 教程。

    【讨论】:

    • 谢谢 andr。我会试试你的.. 我会尝试添加一个循环,使用名字的大小来循环所有值 $_POST['firstname'][i]
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-27
    • 2011-09-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多