Хорошо, так что это мое грубое предположение, так как я должен идти в ближайшее время ...
Я думаю, что, поскольку "данные" преобразуются в строку запроса, они неправильно читаются.Я думаю, что ваш пост, вероятно, читает это:
$_POST['batting'] = 'order[]=110209';
$_POST['order'] = 'order[]=100245&order[]=100007&order[]=100296&order[]=100213&order[]=100071&order[]=100125&order[]=110206&order[]=110205&order[]=100152&order[]=100247&order[]=100329&order[]=100299&order[]=100243';
$_POST['id'] = '662852670';
Поскольку первое появление амперсанда завершает вашу переменную.
Это может показаться глупым, но вы, вероятно, можете избежать всей этой проблемы,окружающие "ватин" с двойными кавычками.Эффективно содержит его в виде строки.
data: '{ "batting":"' + batting + '", "id":'+ id +' }',
Это изменит ожидаемую переменную $ _POST ['order'] на "$ _POST ['batting']. Однако ваш объект данных должен содержаться так, как я уже упоминалв приведенном выше комментарии.
data: {order: '"' + batting + '"', id:id},
Вместо отправки в виде строки без ключа, как в примере кода.
Попробуйте var_dump ($ _ POST) в php, чтобы увидеть все значения, которые вы '... просто из любопытства.
** Извините за все правки. Я постоянно отвлекаюсь на работе ...