当从ajax发布变量时,准备好INSERT语句返回错误

时间:2013-11-27 19:32:58

标签: php ajax jquery pdo prepared-statement

quiz.php

    public function addQ($user){    
$sth = $this->dbh->prepare("INSERT INTO eq_question(qCatID, qTypID, questTitle, questDesc) VALUES (?, ?, ?, ?)");
        $sth->execute(array($user->qcategory, $user->qtype, $user->qtitle, $user->qdesc));      

        echo $errorRep;



            return json_encode($this->dbh->lastInsertId());
    }

ajax.js

function addQuestion(element) { 
alert('add_question ran!');
$('#indicator').show();
var User = new Object();
User.qcategory = $('#qcategory').val();
User.qtype = $('#qtype').val();
User.qtitle = $('#qtitle').val();
User.qdesc = $('textarea#qdesc').val();
var userJson = JSON.stringify(User);
//Tester
alert('qcategory'+User.qcategory);
alert('qtype'+User.qtype);
alert('qtitle'+User.qtitle);
alert('qdesc'+User.qdesc);
console.log('userJson'+userJson);


$.ajax({
        type: "POST",
        url: "h.../quiz_controller.php",
        dataType: "json",
        data: {

            action: 'add_question',
            user: userJson
        },
        success: function(data, textStatus) {
            alert('add_question works!');
            $('#indicator').hide();
        },//success: function(data) END
        error: function(jqXHR, XMLHttpRequest, textStatus, errorThrown) { 
            alert('add question error!');
            alert(" textStatus " + textStatus+" errorThrown " + errorThrown +" XMLHttpRequest " + XMLHttpRequest); 
            console.log('1'+jqXHR+" |t|t| " +textStatus+" |e|e| " + errorThrown +" |x|x| " + XMLHttpRequest); 

        } //error END
});//$.ajax() END

结果:

实际插入将成功,但不是整体。 $user->qtitle的第3个变量将始终为空或只是整个插入失败。

在控制台

上返回ajax错误
1[object Object] |t|t|  |e|e| undefined |x|x| error

因为我使用这行代码:

console.log('1'+jqXHR+" |t|t| " +textStatus+" |e|e| " + errorThrown +" |x|x| " + XMLHttpRequest); 

0 个答案:

没有答案
相关问题