Ajax从sql查询中获取结果

时间:2016-02-10 15:46:31

标签: javascript php jquery mysql ajax

我对网络开发和php都很陌生。

我有一个包含所有功能的js文件。在其中一个函数中,我进行ajax调用以创建一个新的数据库记录,A人正在向B人提出质疑。

JS

var challengeeId = document.getElementById('Challengee').value;

$.ajax({
    type:"post",
    url: baseUrl+"/site/challenge",
    data:{"challengeeId":challengeeId},
    cache:false,
    success: function(html){
    }
});

PHP

$model = new Challenge();
$model->challenger_id = Yii::app()->user->id;
$model->challengee_id = $_POST['challengeeId'];
$model->date_created = date("Y-d-m H:i:s");
$model->status ="pending";
$model->save();

这很好并且正确保存在表格中。该表还为每个挑战创建一个id。我想知道如何返回该id,以便我可以将其作为变量存储在我的JS文件中供以后使用。我有一个SQL查询,它为我返回ID,我只是不知道如何将它从PHP返回给JS。

3 个答案:

答案 0 :(得分:1)

使用此确定您获得最后一个ID

如果使用postgresql

$lastID = Yii::app()->db->getLastInsertID('table_sequence');
return $lastID;

如果使用mysql

$lastID = Yii::app()->db->getLastInsertID();
return $lastID;

因为getLastInsertID是访问器方法,所以你也像这样调用

$lastID = Yii::app()->db->lastInsertID;
return $lastID;

答案 1 :(得分:0)

你需要将该值作为字符串返回或者返回json,然后返回" html"改变你的成功" ajax调用的情况。然后,您可以在javascript

中处理其余部分

答案 2 :(得分:0)

你可以在php中回显id。变量html将包含id。