(08-18-2020, 03:47 AM)InsiteFX Wrote: If you want help on this you will need to show your controller code and ajax code.
Here is my code
JavaScript
Code:
$(document).on('submit', '#login', function(e){
e.preventDefault();
let datos = {
usuemail : $("#usuemail").val(),
usupass : $("#usupass").val()
}
$.ajax({
url:'/signin',
method:'POST',
data:{data: btoa(JSON.stringify(datos))},
dataType:'JSON',
beforeSend:function(){
$("button[type=submit]").addClass('disabled');
Swal.fire({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 3000,
type: 'info',
title: 'Verficando informacion'
});
},
success:function(response){
Swal.fire({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 3000,
type: 'success',
title: response.message,
});
window.location = '/inicio';
$("button[type=submit]").removeClass('disabled');
},
error: function(request){
$("button[type=submit]").removeClass('disabled');
Swal.fire({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 3000,
type: 'error',
title: request.responseJSON.message,
});
}
});
});
Controller
PHP Code:
<?php namespace App\Controllers;
use App\Models\Usuarios_model;
use CodeIgniter\API\ResponseTrait;
class Login extends BaseController{
use ResponseTrait;
public function signin(){
$model = new Usuarios_model();
$encrypter = \Config\Services::encrypter();
$session = session();
if($this->request->isAJAX()){
$datos = json_decode(base64_decode($this->request->getPost('data')));
$data['usuemail'] = $datos->usuemail;
$data['usupass'] = md5($datos->usupass);
$query = $model->login_user($data);
if($query->resultID->num_rows > 0){
$userdata = array();
foreach($query->getResult() as $row){
$userdata['userid'] = $row->userid;
$userdata['usupnom'] = $row->usupnom;
$userdata['usupape'] = $row->usupape;
$userdata['usuemail'] = $row->usuemail;
$userdata['usurol'] = intval($row->idrol);
$userdata["deptid"] = $row->deptid;
$userdata['logged'] = TRUE;
}
$session->set($userdata);
return $this->respond(json_encode(array('message' => 'Usuario encontrado')), 200);
}
else{
return $this->respond(json_encode(array('message' => 'Usuario o contraseña incorrectos')), 404);
}
}
else{
redirect()->to('/403');
}
}
Routes.php
PHP Code:
/*Rutas para login*/
$routes->post('/signin', 'Login::signin');
In the development Enviroment works perfectly, but in a Docker container not,