【发布时间】:2011-09-13 14:19:11
【问题描述】:
我有 3 个输入,其中 2 个我想要在同一个数组中(name="notes['a']" 和 name="notes['b']")但是当我使用 jquery'serializeArray( ) 它把它们都放在同一个“水平”上。但我想使用 php 将张贴的笔记数组序列化到数据库中,方法是使用不属于数组的输入的方法(即 name="basic"
foreach($_POST['data'] as $var => $value) {
if(!strstr(strtolower($value['name']),'added')) $q1 .= "".$value['name']."='".$value['value']."',";
}
echo $q = "UPDATE ".$_POST['table']." SET ".rtrim($q1,',')." WHERE ".$_POST['idField']."=".$_POST['id']." ";
*the array $_POST['data'] is getting posted as;*
[data] => Array
(
[0] => Array
(
[name] => notes[\'a\']
[value] => dan@jynk.net
)
[1] => Array
(
[name] => notes[\'b\']
[value] => Daniel Crabbe
)
[2] => Array
(
[name] => test
[value] => Daniel Crabbe
)
)
但我想应该是这样的?
[data] => Array
(
[0] => Array{
Array(
[name] => notes[\'a\']
[value] => dan@jynk.net
)
Array
(
[name] => notes[\'b\']
[value] => Daniel Crabbe
)
)
[1] => Array
(
[name] => test
[value] => Daniel Crabbe
)
)
如何让 jquery 尊重输入数组中的数组?欢迎任何帮助...
更新 没有这样的,但希望 [0] 层上的所有内容都可以轻松访问...
Array
(
[0] => Array
(
[name] => cm_email_to
[value] => dan@jynk.net
)
[1] => Array
(
[name] => cm_name_to
[value] => Daniel Crabbe
)
[2] => Array
(
[name] => cm_moveToList
[value] =>
)
)
*inputs*
<input id="cm_email_to" name="cm_email_to" value="dan@jynk.net" class="toPostCM" />
<input id="cm_name_to" name="cm_name_to" value="Daniel Crabbe" class="toPostCM" />
*jquery*
var dataCMSettings = $(".toPostCM").serializeArray();
【问题讨论】:
-
UPDATE ".$_POST['table'].": 不要忘记转义您在 SQL 查询中输入的任何数据,否则您将容易受到 sql 注入的攻击
标签: php jquery arrays serialization post