Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

retornar mysql echo como erro em ajax


Por favor, tenha uma compreensão clara do retorno de chamada de sucesso do jquery.Ajax. A documentação diz:Uma função a ser chamada se a solicitação for bem-sucedida.

No seu caso, a solicitação é bem-sucedida se o nome de usuário e a senha inseridos estiverem errados.

Para fazê-lo funcionar corretamente, altere seu código php desta parte para:
$redirect = '';
if($UserData['UserName'] != '')
{
    session_start();
    $error = 0;
    $message = 'Valid';
    $_SESSION['UserId'] = $myusername;

    $typ = $UserData['Type_user'];

    if($typ == "Dealer")
    {
        $redirect = 'Dealer/EditLoginDetails.php';
    }
    else if($typ == "Individual")
    {
        $redirect = '/Dealer/EditLoginDetails.php';
    }
    else
    {
        $redirect = '/Builder/managep.php';
    }
}
else
{
    $error = 1;
    $message = 'Invalid username or password';
}

echo json_encode(array('error' => $error, 'message' => $message, 'redirect' => $redirect));

E código jquery para,
$.ajax({
    url : formURL,
    type: "POST",
    data : postData,
    dataType:'json',
    success:function(data, textStatus, jqXHR) {
        if(data.error == 1) {
            $("#simple-msg").html('<pre><code class="prettyprint">'+data.message+'</code>< /pre>');
        } else {
            window.location = data.redirect;
        }
    }
});
'); } else { window.location =data.redirect; } }});