Я видел много примеров, но по какой-то причине никто не работает для меня.
У меня есть следующее сообщение из приложения, через ajax, в php-файл. Вот как это выглядит, когда его отправили:
OBJ: { "ClientData": [{ «Имя»: «Мастер», "LastName": "тестер", "Электронная почта": "me@me.com", "Д.р.": "1973-01-22", "Возраст": "51", }], "HealthData": [ «состояние: склонность к обморокам / головокружение», «состояние: аллергический ответ на штукатурки», ], "SomeData": [{ «Имя»: «Мужской», "LastName": "проверка", }] }
Код как есть:
{"ClientData":[{"firstName":"Master","lastName":"Tester","email":"me@me.com","dob":"1973-01-22","age":"51","pierceType":"Vici","street":"number of house","city":"here","county":"there","postcode":"everywhere"}],"HealthData":[["condtion : Prone to Fainting / Dizziness","condtion : Allergic Response to Plasters","condtion : Prone to Fainting / Dizziness"]],"PiercerData":[{"firstName":"Male","lastName":"checking","pierceDate":"2013-02-25","jewelleryType":"Vici","jewelleryDesign":"Vidi","jewellerySize":"Vici","idChecked":null,"medicalChecked":null,"notes":"This is for more info"}]}
Это происходит в одной длинной строке в php-файл, вот код:
<?php header('Content-Type: application/json'); header("Access-Control-Allow-Origin: *"); //var_dump($_POST['obj']); $Ojb = json_decode($_POST['obj'],true); $clientData = $Ojb['ClientData']; $healthData = $Ojb->HealthData; $someData = $Ojb->someData; print_r($clientData['firstName']); ?>
Независимо от того, что я пробовал, я не вижу никакой информации, я даже не ошибаюсь, просто пусто! Пожалуйста, может кто-нибудь указать мне в правильном направлении.
Спасибо 🙂
ОБНОВИТЬ
Вот код, который создает объект:
ClientObject = { ClientData : [ { firstName : localStorage.getItem('cfn'), lastName : localStorage.getItem('cln'), email : localStorage.getItem('cem'), dob : localStorage.getItem('cdo'), age : localStorage.getItem('cag'), pierceType : localStorage.getItem('cpt'), street : localStorage.getItem('cst'), city : localStorage.getItem('cci'), county : localStorage.getItem('cco'), postcode : localStorage.getItem('cpc') } ], HealthData : health, PiercerData : [ { firstName : localStorage.getItem('pfn'), lastName : localStorage.getItem('pln'), pierceDate : localStorage.getItem('pda'), jewelleryType : localStorage.getItem('pjt'), jewelleryDesign : localStorage.getItem('pjd'), jewellerySize : localStorage.getItem('pjs'), idChecked: localStorage.getItem('pid'), medicalChecked: localStorage.getItem('pmh'), notes: localStorage.getItem('poi') } ] };
И вот как его послали:
function senddata() { $.ajax({ url: 'http://domain.com/app.php', type: 'POST', crossDomain: true, contentType: "application/json; charset=utf-8", dataType: 'jsonp', data: 'obj='+JSON.stringify(ClientObject), success : function(res) { console.log(res); }, error: function(err) { } }); }