我在读取Java脚本中的Json_encode响应时遇到问题。
PHP文件从数据库读取值,并将结果作为Json_encode数组发送到html。
<?php
include("connect.php");
try {
$conn = new PDO("mysql:host=$servername;dbname=mydb", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "Call print_awb (@output1,@output2,:input_awb_ref_id)";
if (isset($_POST)) {
$p_in_awb_ref_id =reset($_POST["var_p_in_awb_ref_id"]);
}
$stmt = $conn->prepare($sql);
$stmt->bindParam(':input_awb_ref_id',$p_in_awb_ref_id, PDO::PARAM_INT);
$stmt->execute();
$out_awb_ref_id = $conn->query("SELECT @output1")->fetch(PDO::FETCH_ASSOC);
$out_agent_id = $conn->query("SELECT @output2")->fetch(PDO::FETCH_ASSOC);
$output = array(
"out_awb_ref_id" => $out_awb_ref_id,
"out_agent_id" => $out_agent_id,
);
echo json_encode($output);
$stmt->closeCursor();
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}
?>
<script type="text/javascript">
function get_parameters(){
var quote = ABCD1234;
quote.toString();
window.alert(quote);
$.ajax({
type: "POST",
url: "printawb.php",
data: {var_p_in_awb_ref_id:quote},
dataType: "text",
success: function (result) {
alert(result);
var a = result.out_awb_ref_id;
alert (a);
alert(result['out_awb_ref_id']);
alert(result['out_agent_id'])
},
error:function (jqXHR, status, err){
//Fail
layer_1.html(html);
}
});
return vars;
};
</script>
HVP000062
{“ out_awb_ref_id”:{“ @ output1”:“ MIR”},“ out_agent_id”:{“ @ output2”:“ rtPreston”}}未定义未定义
所有需求是结果第二行中的值,即。“ MIR”和“ rtPreston”
我尝试了几件事:1.将调用函数类型更改为'JSON',但响应为'Object',没有值。2.尝试转换为jsonString。3.尝试使用JSON.parse(jsonString)读取值;4.结果['out_ref_awb_id']
他们都不工作。有人可以帮助我如何获得这些价值吗?然后,我可以使用它们来填充html页面。
非常感谢
将其作为第一行添加到HTML模板的HEAD部分中
<meta content="text/html;charset=utf-8" http-equiv="Content-Type">
<meta content="utf-8" http-equiv="encoding">
然后尝试以下代码:
<script type="text/javascript">
function get_parameters(){
var quote = ABCD1234;
quote.toString();
window.alert(quote);
$.ajax({
type: "POST",
url: "printawb.php",
data: {var_p_in_awb_ref_id:quote},
dataType: "text",
success: function (result) {
var data = jQuery.parseJSON(result);
var param1 = data.out_agent_id;
var param2 = data.out_awb_ref_id;
alert(param1["@output2"]);
alert(param2["@output1"])
},
error:function (jqXHR, status, err){
//Fail
layer_1.html(html);
}
});
return vars;
};
</script>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句