Javascript 将对象的Jquery数组传递到php数组
我在jQuery中有一个数组,我正试图使用Post将其转换为PHP数组:Javascript 将对象的Jquery数组传递到php数组,javascript,php,jquery,arrays,object,Javascript,Php,Jquery,Arrays,Object,我在jQuery中有一个数组,我正试图使用Post将其转换为PHP数组: $.post("http://www.samepage.com", {final_slip: JSON.stringify(final_slip)}); 当我将这个动态创建的数组“final_slip”传递到其中时: [final_bet_game { final_user_id="1", final_game_id="1", final_game_type="spread_2",final_price="10",
$.post("http://www.samepage.com", {final_slip: JSON.stringify(final_slip)});
当我将这个动态创建的数组“final_slip”传递到其中时:
[final_bet_game { final_user_id="1", final_game_id="1", final_game_type="spread_2",final_price="10", final_odds="1.8"}, final_bet_game { final_user_id="2", final_game_id="3", final_game_type="spread_2",final_price="1", final_odds="2.8"}, final_bet_game { final_user_id="3", final_game_id="14", final_game_type="spread_32",final_price="140", final_odds="1.8"}, final_bet_game { final_user_id="4", final_game_id="1", final_game_type="spread_2",final_price="10", final_odds="2.8"}, ]
我得到这个php输出:
$data = $_POST['final_slip'];
print_r ( $data);
[{\"final_user_id\":\"1\",\"final_game_id\":\"1\",\"final_game_type\":\"spread_2\",\"final_price\":\"211\",\"final_odds\":\"1.8\"},{\"final_user_id\":\"1\",\"final_game_id\":\"2\",\"final_game_type\":\"spread_2\",\"final_price\":\"212\",\"final_odds\":\"1.8\"},{\"final_user_id\":\"1\",\"final_game_id\":\"parlay\",\"final_game_type\":\"\",\"final_price\":\"021\",\"final_odds\":\"\"}]
我尝试使用json_decod,但没有得到任何结果。我怎样才能把它放到一个可用的php数组中?使用ajax会更好吗
但是当我尝试用PHP访问它时,我没有看到任何结果
这说明您还有另一个问题——PHP没有报告错误。你想
在这种情况下,可能的原因是您的数据到达$\u POST
数组,并且未定义$myJsonString
(自PHP5.3.0起,自PHP5.4.0起不再可用)
你要么
if (array_key_exists('myJsonString', $_POST)) {
$myJsonString = $_POST['myJsonString'];
} else {
die("myJsonString not in _POST");
}
或者直接试试
$result = json_decode($_POST['myJsonString'], true);
但是当我尝试用PHP访问它时,我没有看到任何结果
这说明您还有另一个问题——PHP没有报告错误。你想
在这种情况下,可能的原因是您的数据到达$\u POST
数组,并且未定义$myJsonString
(自PHP5.3.0起,自PHP5.4.0起不再可用)
你要么
if (array_key_exists('myJsonString', $_POST)) {
$myJsonString = $_POST['myJsonString'];
} else {
die("myJsonString not in _POST");
}
或者直接试试
$result = json_decode($_POST['myJsonString'], true);
问题是outout中的反斜杠需要去掉:
$result = $_POST['json_string'];
$test = urldecode(str_replace("\\","",$result));
$test2 = (json_decode($test,true));
print_r($test2);
问题是outout中的反斜杠需要去掉:
$result = $_POST['json_string'];
$test = urldecode(str_replace("\\","",$result));
$test2 = (json_decode($test,true));
print_r($test2);
您已经在使用AJAX了
$.post()
是一个jQuery速记AJAX方法。这完全是无效的json。在字符串化之前,最后一张幻灯片中到底是什么?好的,我如何解码这个输出的字符串?在创建有效的JSON之前,您无法解码。最后一张幻灯片是我问题中的第二个代码块。您已经在使用AJAX了$.post()
是一个jQuery速记AJAX方法。这完全是无效的json。在字符串化之前,最终的\u slip中到底是什么?好的,我如何解码这个输出的字符串?在创建有效的JSON之前,您无法解码。最终的\u slip是我问题中的第二个代码块。