Ola todos, estou criando um programa utilizando o framework CodeIgniter e o metodo AJAX(PHP, XHTML e JavaScript(jQuery)), o programa ao ser iniciado abre uma tela onde usuário entra com seu login e senha, ao apertar no botão logar e chamada no jQuery sua função respectiva. Essa função coleta os dados do formulario e envia os dados para o PHP para o metodo chamado logar(). O problema que enfrento é o seguinte, o Jquery não consegue achar o método logar() dizendo que é inexistente. Segue o script:
Classe “Login” onde contem as funções de tratamento:
public function index()
{
$this->load->view('index');
}
public function logar()
{
$data = array();
$id_usuario = $this->input->post('id_usuario');
$senha = $this->input->post('senha');
$data[] = $id_usuario;
$data[] = $senha;
print_r($data);exit;
}
}
HTML Index, pagina que o usuario vê e onde carrega o formulario:
<div class="modal" style="display:block; margin-top: 10%" tabindex="-1">
<div class="modal-dialog" >
<div class="modal-content" style="background-color: #606060">
<div class="modal-header">
<h4 class="modal-title" style="margin-left: 45%; font-family:Times New Roman; font-size: 30px;color: white">Login</h4>
</div>
<div class="modal-body">
<form id="login">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-user" id="addon_id_usuario"></span>
<input type="text" id="id_usuario" name="id_usuario" maxlength="10" class="form-control"" value='' placeholder="Usuários">
</div>
</div>
</div>
<div class="row">
<div class="col-md-8 col-md-offset-2" style="margin-top: 5%">
<div class="input-group">
<span class="input-group-addon glyphicon glyphicon-lock" id="addon_senha"></span>
<input type="password" id="senha" name="senha" maxlength="10" class="form-control" value='' placeholder="Senha">
</div>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" id="bt_logar" nome="bt_logar" class="btn btn-primary btn-lg" style="margin-right: 35%; width: 200px">Logar</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->
</div>
JavaScript:
var msg;
var form;
var request_url = location.pathname;
var url = request_url.replace(’/’, ‘’);
$( document ).ready(function(){
$('#bt_logar').click(function(e){
e.preventDefault();
if(($('#id_usuario').val() == '') || ($('#senha').val() == '')){
if($('#id_usuario').val() == '')
{
msg = 'Usuario';
} else if($('#senha').val() == '') {
msg = 'Senha'
}
alert( msg + ' esta Vazio');
} else {
alert = (request_url);
var data = 'id_usuario=' + $('#id_usuario').val();
data = data + '&senha=' + $('#senha').val()
$.ajax({
url: 'logar',
type: 'post',
Datatype: 'html',
data: data,
error: function(xhr, status, error){
console.log(error);
console.log(status);
},
success: function(){
$('#id_usuario').val('');
$('#senha').val('');
}
});
}
});
});
Routes do CodeIgniter:
$route[‘default_controller’] = ‘login’;
$route[‘404_override’] = ‘logar’;
$route[‘translate_uri_dashes’] = FALSE;
$route[‘cong/logar’] = ‘login/logar’;
$route[‘cong/(:any)’] = ‘login/logar’;
Agradeço desde já.