-2

我越来越近了。我有一个表单想要提交到 PHP 文件以处理和更新 MySQL 数据库,然后更新 div。我可以将数据发送到我的 PHP 文件并查看它,但不确定如何访问它,所以它很有用。

来自我的 JS

var str = $("form").serialize();
xmlhttp.open("GET","concessions_write.php?"+str,true);
xmlhttp.send();

将此发送到我的 PHP 文件

concessions_write.php?btn%5B%5D=button01&itm%5B%5D=Hot+Dog&prc%5B%5D=1.00&id%5B%5D=1&btn%5B%5D=button02&itm%5B%5D=Popcorn&prc%5B%5D=1.00&id%5B%5D=3&btn%5B%5D=button03&itm%5B%5D=Combo&prc%5B%5D=3.50&id%5B%5D=2&btn%5B%5D=button04&itm%5B%5D=Nabs&prc%5B%5D=0.50&id%5B%5D=4&name=&message= 

在我的 PHP 文件中

print_r($_GET);

Array (
    [btn] => Array (
        [0] => button01
        [1] => button02
        [2] => button03
        [3] => button04 
    )
    [itm] => Array (
        [0] => Hot Dog
        [1] => Popcorn
        [2] => Combo
        [3] => Nabs
    )
    [prc] => Array (
        [0] => 1.00
        [1] => 1.00
        [2] => 3.50
        [3] => 0.50
    )
    [id] => Array (
        [0] => 1
        [1] => 3
        [2] => 2
        [3] => 4
    )
    [name] =>
    [message] =>
)

这是我需要的信息。每个条目有 4 个部分 - 、btnitm我目前有 4 个条目。只是不确定如何将其分解为可用的数组,以便我可以将数据写回数据库。prcid

看看,parse_str但似乎无法让它工作。

想法?还知道名称和消息可能来自哪里吗?没有带有这个的表单元素。

4

2 回答 2

1

如果您知道数据的格式,则可以在将 $_GET 作为数组()收集后执行此操作:

$_GET['btn']['0'];

名称和消息必须来自表单输入名称。

于 2012-12-29T18:06:53.560 回答
0

在我看来,您只需要一个for循环:

for ($i = 0; $i < 3; $i++) {
    $btn = $_GET['btn'][$i];
    $itm = $_GET['itm'][$i];
    $prc = $_GET['prc'][$i];
    $id = $_GET['id'][$i];

    // Sanitise and save these values here
}
于 2012-12-29T19:14:52.597 回答