Я пытаюсь передать объект JS (ассоциативный массив), который динамически создаю, в запрос PHP / MySQLi.
- Когда я пишу объект JS (transferData
) на консоли это выглядит как задумано (см. Ниже).
- Когда я проверяю запрос PHP / MySQLi отдельно, он тоже работает.
- Поэтому я предполагаю, что моя проблема связана с вызовом Ajax который я использую для передачи объекта JS в PHP / MySQLi.
Может кто-нибудь сказать мне, как должен выглядеть правильный вызов Ajax здесь (например, используя JSON et c.) Или что я должен изменить на стороне PHP / MySQLi ?
Мой JS объект:
0: {vId: "04567901", rId: "DE-002"}
1: {vId: "04567902", rId: "DE-005"}
2: {vId: "04567903", rId: "DE-007"}
length: 3
__proto__: Array(0)
Мой jQuery / Ajax:
$('#btnConfirm').click(function() {
$.ajax({
type: 'POST',
url: 'updateIds.php',
data: {
transferData: transferData
},
success: function(result){
$('#modalSuccess').modal('show');
}
});
});
My PHP / mySQLi:
$postData = $_POST;
$transferData = $_POST['transferData'];
$conn = new mysqli($host, $username, $password, $database);
if($conn->connect_error) {
die("Connection Error: " . $conn->connect_error);
}
$stmt = $conn->prepare("UPDATE myTable l SET l.rId = ? WHERE l.vId = ?");
foreach($transferData as $vId => $rId) {
$stmt->bind_param('ss', $rId, $vId);
$stmt->execute();
}
$stmt->close();
$conn->close();
Обновление:
Я сосредоточен на вызове Ajax, как мне кажется есть причина, по которой данные не достигают страницы PHP.
Большое спасибо за любую помощь в этом, Том