Ajax调用不能在表单提交之前返回数据


Ajax call not able to return data before form submit

现在这是我的文件getcountshare.php它返回的计数值是5,如下所示:

/*    getcountshare.php */
include "config.php";
$query = "select count(sharecount_id) from brand_testimonial_sharecount where sharecount_fbid='".$fbid."'";
$result=mysql_query($query);
$sharecount = mysql_fetch_array($result);
echo $sharecount;
return $sharecount; //returns sharecount=5
//end
/* File registeration.php where ajax is call */
<html>
<script type="text/javascript">
var countshare=0; //global variable

function validateform()
{ 
    getsharecount();
    if(countshare==5) //countshare=5 submit form
    {
         $('#profileForm').submit();
    }
    return false;   
}
function getsharecount()
{
  var url = "https://solutions.techshastra.com/fbapps/newapptest/getcountshare.php?meid=10001020002";
    $.ajax({
        type:'POST',
        url: url,   
        async: false,
        success: function(data)
        {
            countshare=data; //retrieves countshare=5
        }
    });  // end of ajax
}
</script>
<form id="profileForm" name="profileForm" action="thankyou.php"  method="POST" onsubmit="javascript:return validateform();" >

</form>
</html>

这很简单。你需要的是:

$query = "select count(sharecount_id) AS share from brand_testimonial_sharecount where   sharecount_fbid='".$fbid."'";
$result=mysql_query($query);
$sharecount = mysql_fetch_array($result);
echo $sharecount['share'];

如果你使用一个警告从你的PHP中显示HTTPResponseText,它会显示类似ARRAY()的东西