我正在研究一些需要使用ajax调用php并获取一些值的函数。我怎么会在下面发布我的JS功能 part 。
的JavaScript
$.ajax({
type: "POST",
url: 'php/getAccountJobs.php',
ContentType:"application/json",
dataType:'json',
data:{email:$.cookie("email")},
success : function(arr)
{
for(var i=0 ; i<parseInt(response); i++) // number of jobs are the response we use there
{
var jobmsg = arr[2*i] ;
var imgurl = arr[2*i+1];
$.ajax({
type: "POST",
url: "php/addDivAccountJobs.php",
dataType:'json',
data: {imgURL:imgurl,message:jobmsg},
}).done(function( html ){ alert(html);});
}
}
});
所以我检查了控制台日志并看到了以下错误。
Notice: Undefined index:imgURL
所以我认为使用isset函数来测试是否设置了imgURL值。
PHP
<?php
session_start();
if(isset($_POST["imgURL"]) && isset($_POST["message"]))
{
$username = $_SESSION["firstname"]." ".$_SESSION["lastname"];
$imgurl = $_POST["imgURL"];
$msg = $_POST["message"];
$fullecho = '<div class="col-md-4">
<div class="profile-card text-center">
<img class="img-responsive"src="'.$imgurl.'">
<div class="profile-info">
<h2 class="hvr-underline-from-center" id="jobOwnerName">'.$username.'</h2>
<div id="jobMessage">'.$msg.'.</div>
</div>
</div>
</div>';
echo json_encode($fullecho);
die();
}
else
echo json_encode("error");
?>
正如我所料,我收到的是警告框中的错误消息。
我的问题
我经历了每个stackexchange问题,并试图找到它背后的原因并修复它。但这些解决方案都没有给我一个正确的答案。有人可以帮我找到问题吗?
答案 0 :(得分:0)
当你的json属性有未定义的值时,它完全从json中消失。所以因为arr [2 * i]或arr [2 * i + 1]某处在循环中得到未定义的值