-4

我的 php 有header('Content-type: application/json')一个json_encode.
我用来将数据发送到 php 文件的 ajax 代码具有dataType: 'json'并且我将数据作为字符串 ( json.stringify) 发送。
问题是,我无法$_POST['data']处理字符串。
有什么办法可以将其转换为对象?

编辑:我想要实现的是,将数据从 ajax 发送到 php,其中查询从数据库中查找信息,并且 php 文件使用 JSON 向 ajax 发送一个数组,然后 ajax 显示它。

阿贾克斯:

function op_prof(obj) {
    var xval = obj.id;

    $.ajax({
    type: "POST",
    url: '../script/profile.php',
    dataType: 'json',
    data: JSON.stringify({'u_search':'xval'}),
    cache: false,
    success: function(data) {
        console.log(data);
        alert(data);
        alert({u_search:xval}['u_search']);
        $("#co_profile").html(data).show();
    }
  });
};

PHP:

<?php include(dirname(__FILE__). '/../script/config.php');
session_start();
$id = $_POST['u_search'];
foreach($pdo->query("SELECT * FROM Users WHERE ID='$id'") as $row) {
    $fullname = $row['FullName'];
    $data = array("u_data"=> true,"inpt"=>"<p>My name is " . $fullname . "</p>");
header('Content-type: application/json');
echo json_encode($data);
?>

<?php $pdo = null; ?>

我也想知道实现这一点的任何其他方式(即使不使用 JSON)

4

1 回答 1

0

尝试json_decode("php://input");

于 2013-05-21T07:02:40.247 回答