Jquery ajax从php-mysql中检索文本(数字)


Jquery ajax retrieving text (numbers) from php mysql

我刚刚开始学习Jquery,我正在尝试使用Ajax发布和检索一些数据。我想推断的数据是一些简单的文本(没有json),更具体地说是数字。所以我写了这个:

$.ajax({
    url : 'finproj.php',
        type : 'POST',
        data : 'p=' + devidproj,
        success : function(resultaat) {
var lengtebalxkx = Math.floor(100*resultaat/<?php echo $number; ?>);
$(".ongelezendonatiesproj").animate({opacity:1}, 300).show(); 
    if(lengtebalxkx > 120) 
        {
            $(".ongelezendonatiesproj").width(120);         
        }
    else 
        {
            if(lengtebalxkx < 1)
            {
                $(".ongelezendonatiesproj").width(2);       
            }
            else { 
            $(".ongelezendonatiesproj").width(lengtebalxkx - 10);
            } 
        }
         },
});

devidproj是一个数字,$number也是。我尝试添加dataType : 'text',但这并没有奏效。我试图从中检索数据的php文件是:

<?php include('config.php');
$pid = $_REQUEST['p'];
$nieuwgeld = mysql_query('SELECT bedrag, aantal, projectid FROM donaties WHERE projectid="'.$pid.'"');
while($nieuwebed = mysql_fetch_assoc($nieuwgeld)) {
$plusbedrag = $nieuwebed['bedrag'] * $nieuwebed['aantal'];
$nieuwebedragen = $nieuwebedragen + $plusbedrag;
}
if($nieuwebedragen<>0) {echo $nieuwebedragen;} ?>

php文件运行良好。

我想我在Jquery脚本中漏掉了一个逗号或其他什么,但我似乎看不出它有什么问题:s我试过用alert()调试它,但没有成功。

使用

data : {p:devidproj},

指示

  data : 'p=' + devidproj,

在ajax请求中使用以下数据:

 data : {p: devidproj}

请注意,p上不应该有引号。

您还应该通过parseInt()函数将Ajax请求的结果解析为整数,因为它假定是一个数字。如果没有添加,JS会默认将其解析为字符串。

 var lengtebalxkx = Math.floor(100*parseInt(resultaat)/<?php echo $number; ?>);