JS и post

silver0793
На сайте с 26.04.2012
Offline
20
1059

Ребят, есть вопрос по поводу отправки post формы (чужой код - потемки), не могу кое что реализовать. Есть профи за денюжку в лс посмотреть пациента?

---------- Добавлено 13.08.2014 в 01:49 ----------

Даже скажем так: У меня есть данные которые передаются как post в формате JSON:

[{"role":"name","label":"Имя","value":"frgd"},{"role":"phone","label":"Телефон","value":"(345) 345-34-53"}]

как мне посредством PHP получить в переменную значения value отсюда?

iqmaker
На сайте с 17.04.2012
Offline
342
#1


<?php
$json = '[{"role":"name","label":"Имя","value":"frgd"},{"role":"phone","label":"Телефон","value":"(345) 345-34-53"}]';
$data = json_decode($json);
echo( $data[0]->value );
echo( $data[1]->value );
?>

надо что-то написать

silver0793
На сайте с 26.04.2012
Offline
20
#2
iqmaker:

<?php
$json = '[{"role":"name","label":"Имя","value":"frgd"},{"role":"phone","label":"Телефон","value":"(345) 345-34-53"}]';
$data = json_decode($json);
echo( $data[0]->value );
echo( $data[1]->value );
?>

надо что-то написать

так у меня приходит именно разные значения в $json (имя и фамилия)

Это код со стороны JS:

this.$.ajax({

type: "POST",

url: '/form.php',

data: JSON.stringify(this.getValues()),

contentType: 'application/json',

success: function(data){

that.afterSubmit();

},

По firebug'у я точно знаю что 2 значения передались, но что передать вот сюда?

$data = json_decode($_REQUEST['Object']);

ДП
На сайте с 23.11.2009
Offline
203
#3

http://php.net//manual/ru/reserved.variables.httprawpostdata.php

вроде так обычно получается


<?php
$postdata = file_get_contents("php://input");
$data = json_decode($postdata);
?>
silver0793
На сайте с 26.04.2012
Offline
20
#4
Дикий пионер:
http://php.net//manual/ru/reserved.variables.httprawpostdata.php
вроде так обычно получается

<?php
$postdata = file_get_contents("php://input");
$data = json_decode($postdata);
?>

не получилось

iqmaker
На сайте с 17.04.2012
Offline
342
#5

JS:

data: { json: JSON.stringify(this.getValues()) },

PHP:

$_REQUEST['json']
Ayavryk
На сайте с 11.10.2003
Offline
209
#6

В PHP есть такая классная штука - phpinfo(). Если не знаете, забыли или сомневаетесь в том какие данные передаются от клиента на сервер - вставляете вызов phpinfo в скрипт и получаете всю-всю информацию о переменных окружения, передаваемых данных, библиотеках.

Например - толкнули через форму "XXXXXXXXXXXXXXXXXXXXXXX", а затем в броузере в выдаче phpinfo ищите простым поиском это самое XXX....

В вашем случае наткнетесь на блок параметров $_REQUEST['...']

Тынгыр, мынгыр, комсомол (http://erum.ru). Ехари, ехари, (жалобно) аяврик. /народная тунгусская песня/
silver0793
На сайте с 26.04.2012
Offline
20
#7

Возможно, кому то пригодится:

Из JS следует выпилить contentType: 'application/json',

В form.php такой строкой print '<pre>'.print_r($good_data,1).'</pre>'; получил ответ что мне все таки пришло/.

Ну и собственно: $data = $_REQUEST['json'];

$good_data = json_decode($data);

я получил свой массив. а оттуда и извлек то, что нужно

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий