javascript - jQuery PHP POST 错误处理

标签 javascript php jquery mysql

我通过 jQuery 发送 POST 请求:

if ( isset( $_POST['newOwner'], $_POST['uID'] ) ) :
    $function->updateTransport( $_POST['newOwner'], $_POST['uID'] );
endif;

$.post("", {
    newOwner: $("#newOwner").val(),
    uID: uid
})

当 MySQL 无法更新时,如何登录 jQuery?我尝试过 .fail 但 jQuery 总是显示成功的发布请求。

public function updateTransport( $newOwner, $uID )
{
    try
    {
        $stmt = $this->db->prepare( "UPDATE cars SET owner= ? WHERE id = ?" );
        $stmt->execute( array( $newOwner, $uID ) );
    }
    catch(PDOException $e)
    {
        echo $e->getMessage();
    }
}

最佳答案

您需要发送有关执行查询成功和失败的特定数据。 试试这个代码。

    public function updateTransport( $newOwner, $uID ){
        try
        {
            $stmt = $this->db->prepare( "UPDATE cars SET owner= ? WHERE id = ?" );
            $status = $stmt->execute( array( $newOwner, $uID ) );
            if($status){
                $ret = array(
                    'status' => 'success',
                    'message' => 'Success'
                    );
                echo json_encode($ret);
            }else{
                $ret = array(
                    'status' => 'failed',
                    'message' => 'Failed'
                    );
                echo json_encode($ret);
            }
        }
        catch(PDOException $e)
        {
            $ret = array(
                'status' => 'failed',
                'message' => $e->getMessage()
                );
            echo json_encode($ret);
        }
   }
    $.ajax({
        'url' : 'yourURL',
        data : { 'key' : value },
        success : function(data, textStatus, jqXHR){
            var dat = JSON.parse(data);
            if(dat.status == 'success'){

            }else{

            }
        },
        error : function(jqXHR, textStatus, errorThrown){
            var dat = JSON.parse(data);
            if(dat.status == 'success'){

            }else{

            }
        }
    });

关于javascript - jQuery PHP POST 错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45906930/

相关文章:

javascript - 在Javascript中拆分日期

javascript - 我可以用外部 JavaScript 控制 Unity3D 吗?

javascript - jquery 数据表自定义过滤器

javascript - Jquery 模糊在 Firefox 和 Chrome 中不起作用,但在 IE9 中有效

javascript - 如何在 Javascript 中检查 XML 元素值是否存在

javascript - 在 drop 事件中真的需要调用 preventDefault() 吗?

javascript - 链接到 CSS 文件的 URL 错误

php - 查找以 m/d/Y 格式存储的两个日期之间的天数

php - 如何在 PHP 上获取 count(*)?

javascript - 如何使用 Javascript 对动态数组中的项目进行分组