Как выбрать значения объекта DTO для использования в обновлении SQL

Перво-наперво, объяснение того, что я делаю: я делаю простую форму с запросом ajax (на кнопке отправки формы), которая обновляет информацию о компании, я довольно новичок в php, но хочу использовать передачу данных объект в ajax (как я делал раньше на других языках), но я не ухожу далеко

Хорошо, так что это, вероятно, очень простой вопрос. Как я уже говорил выше, я использовал объекты передачи данных AJAX раньше, но не с php … Я немного разочарован, так как не могу выбрать данные объекта для использования в моем обновлении sql на целевой странице , Я вижу в console.log, что объект кажется полностью сформированным и содержит данные, но я не могу на всю жизнь получить правильный синтаксис для выбора данных! Помогите

Ajax Request:

    var $CompanyName = $("#CompanyName").val(),
$TelNumberAreaCode = $("#TelNumberAreaCode").val(),
$TelNumber = $("#TelNumber").val(),
$EmailAddress = $("#EmailAddress").val(),
$AddressLine1 = $("#AddressLine1").val(),
$AddressLine2 = $("#AddressLine2").val(),
$AddressCity = $("#AddressCity").val(),
$AddressCounty = $("#AddressCounty").val(),
$AddressPostCode = $("#AddressPostCode").val();

var CompanyDetailsDTO = {};
CompanyDetailsDTO.CompanyName = $CompanyName;
CompanyDetailsDTO.TelNumberAreaCode = $TelNumberAreaCode;
CompanyDetailsDTO.TelNumber = $TelNumber;
CompanyDetailsDTO.EmailAddress = $EmailAddress;
CompanyDetailsDTO.AddressLine1 = $AddressLine1;
CompanyDetailsDTO.AddressLine2 = $AddressLine2;
CompanyDetailsDTO.AddressCity = $AddressCity;
CompanyDetailsDTO.AddressCounty = $AddressCounty;
CompanyDetailsDTO.AddressPostCode = $AddressPostCo;

var DTO = { 'request': CompanyDetailsDTO }

$.ajax({
type: "POST",
url: "php/updates/update-businessdetails.php",
data: JSON.stringify(DTO),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: CompanyDetailsSuccess,
error: CompanyDetailsError
});

Обновление PHP / Код целевого файла:

<?php
// DB Connection

// How can i pick the below vars out the object???
// I've tried loads of different syntaxes that i think should/could be right
$CompanyName = ??
$TelNumberAreaCode = ??
$TelNumber = ??
$EmailAddress = ??
$AddressLine1 = ??
$AddressLine2 = ??
$AddressCity = ??
$AddressCounty = ??
$AddressPostCo = ??$sql="UPDATE `businessdetails` SET `TelNumberAreaCode` = '$TelNumberAreaCode',`EmailAddress` = '$EmailAddress',`AddressLine1` = '$AddressLine1',`AddressLine2` = '$AddressLine2',`AddressCity` = '$AddressCity',`AddressCounty` = '$AddressCounty',`TelNumber` = '$TelNumber',`AddressPostCode` = '$AddressPostCode',`CompanyName` =    '$CompanyName'";

$result = $conn->query($sql);

if ($result)
{
header('Content-Type: application/json');
print json_encode($result);
}
?>

Должно быть, я что-то делаю не так, или глупо, потому что, похоже, я не могу найти ответ ?!

0

Решение

Попробуй использовать json_decode ():

// @var stdClass
$decoded_data = json_decode(file_get_contents('php://input'), false);

// And access its properties:
$CompanyName = $decoded_data->request->CompanyName;
$TelNumberAreaCode = $decoded_data->request->TelNumberAreaCode;
// ...
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector