通过AJAX将可变长度数组传递给PHP

通过AJAX将可变长度数组传递给PHP,php,jquery,ajax,arrays,Php,Jquery,Ajax,Arrays,我在通过这张表格时遇到了很多问题/ <form id="form"> <select id="<?php echo $answer['aid']; ?>" name="importance[<?php echo $answer['aid']; ?>]"> <option value="0">NO</option>

我在通过这张表格时遇到了很多问题/

<form id="form">
  <select id="<?php echo $answer['aid']; ?>" name="importance[<?php echo $answer['aid']; ?>]">                      
                                  <option value="0">NO</option>
                                  <option value="25">Unlikely</option>
                                  <option value="50" selected="selected">Neutral</option>
                                  <option value="75">Perhaps</option>
                                  <option value="100">YES</option>
                       </select>
<input 

type="submit" id="submit" value="Next"/>
</form>
它给我一个字符串一个在警报中看起来像这样的字符串

“重要性%5B101%5D=50和重要性%5B100%5D=50和重要性%5B99%5D=50和重要性%5B98%5D=50”

如何删除%5B和%5D或对其进行解码,以便将方括号取回并将其转换为一个数组以提交给SQL字符串?

您可以使用php对其进行解码
虽然我很好奇,为什么在发送整个表单时要序列化它,而您已经将它们作为数组发送了?

您不需要更改%5D或%5B,您可以从发送数据的get/POST获取update_KB.php的参数。如果你有任何问题,请写下面的代码-

 print_r ($_POST); OR print_r ($_GET);

在更新_KB.php时。然后你可以决定做什么。

只需编辑原始问题,而不是添加评论。单击问题左下角的链接。用于构建表单HTML的PHP不如生成的HTML本身有用。只需发送数组的序列化版本,我不明白为什么您需要这个JSONstring=JSON.stringify(impArray)。php还有json_decode()(PHP5.2+)。
 print_r ($_POST); OR print_r ($_GET);