我的 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)