0

我有一个 html 表单,我在其中添加了一些元素,例如,当用户从列表中选择多个国家时,jquery 会遍历所选列表并为每个国家/地区创建一组表单字段。

假设用户选择了美国、中国和印度,那么将为每个国家创建表单字段,将 id asn 命名为 *countryName_indexValue, customeName_countryName_indexValue.*

我的问题: 当用户填写并点击提交按钮时,我需要通过 php 将此附加元素值提交到 mysql 数据库。我该怎么做?请帮我......

结果是这样的

<form>

<table>
<thead>
<tr>
<td>Country Name</td>
<td>Data01</td>
<td>Data02</td>
</tr>
</thead>

<!-- APPENDED ELEMENTS -->

<tbody>
<tr id="usa_0">
<td><input type="text" name="userCountry_usa_0" id="userCountry_usa_0"></td>
<td><input type="text" name="countryData01_usa_0" id="countryData01_usa_0"></td>
<td><input type="text" name="countryData02_usa_0" id="countryData02_usa_0"></td>
</tr>

<tr id="china_1">
<td><input type="text" name="userCountry_china_1" id="userCountry_china_1"></td>
<td><input type="text" name="countryData01_china_1" id="countryData01_china_1"></td>
<td><input type="text" name="countryData02_china_1" id="countryData02_china_1"></td>
</tr>

<tr id="india_2">
<td><input type="text" name="userCountry_india_2" id="userCountry_india_2"></td>
<td><input type="text" name="countryData01_india_2" id="countryData01_india_2"></td>
<td><input type="text" name="countryData02_india_2" id="countryData02_india_2"></td>
</tr>
</tbody>

</table>

</form>

谢谢..

4

2 回答 2

1

那么问题是什么?您在提交数据时遇到问题了吗?或者您是否正在努力处理 PHP 端的 $_POST ?

如果它正在处理 $_POST,我建议您将生成的表单字段更改为具有表单的 iduserCountry[countryName][indexValue]而不是userCountry_countryName_indexValue.

这样,当提交表单时,$_POST 将由数组组成,然后您可以循环写入数据库,例如 $_POST 将具有以下内容:

$_POST['userCountry'] = array( 'usa' => array( '0' => 'someValue'),
                               'china' => array( '1' => 'someOtherValue'),
                               'india' => array( '2' => 'yetAnotherValue'),
                        )

然后你可以循环这个,例如:

foreach($_POST['userCountry'] as $country=>$subArray) {
    //code here to insert data
}

您当前的实现也可以使用循环,只要您遍历整个 $_POST 对象,检查每个键,并查找特定的子字符串,在下划线上爆炸,然后处理,但它会有点难看.

于 2012-08-29T16:34:04.043 回答
-1

在表单提交事件或元素单击时,您可以使用 jQuery 的 .post() 或 .get() 函数将输入值发送到 php 文件。

以下是关于如何使用 .post() 的一些基本和更复杂的示例:http: //api.jquery.com/jQuery.post/

强烈建议 php 文件包含数据验证,然后您可以从那里发出带有 php 的 sql insert。

于 2012-08-29T16:43:49.190 回答