¿Cómo puedo implementar AJAX en MVC con URL/controller/action?
Publicado por Felipe (12 intervenciones) el 02/10/2019 20:02:07
Tengo un problema al querer realizar una petición AJAX para anidar un SELECT en un formulario especifico, estoy utilizando PHP MVC creado desde cero (me base en un curso) y en mi index.php cargo mis controladores con sus respectivos métodos(actions), resulta que al ejecutar mi función AJAX, esta me muestra la información en el index, y no mantiene la vista en la cual la ejecuto.
Aquí dejo mi AJAX:
PHP SitioController:
PD: He ocupado autoload para cargar mis controladores y mi archivo .htaccess lo tengo configurado asi:
HTACCESS:
De antemano agradezco cualquier información y ayuda.
Aquí dejo mi AJAX:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$(document).ready(function(){
$('#idRegion').change(function(){
$('#idRegion option:selected').each(function(){
id_region = $(this).val();
$.ajax({
type: 'POST',
url: '<?=base_url?>sitio/obtenerProvincias',
data: {id_region: id_region},
dataType: 'json',
success: function(data){
$('#idProvincia').html(data.html);
}
}
});
});
});
});
PHP SitioController:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public function obtenerProvincias(){
$id_region = $_POST['id_region'];
$provincia = new Provincia();
$provincia->setIdRegion($id_region);
$provincias = $provincia->getAllByRegion();
$html = "<option value='0'>Seleccionar Provincia</option>";
while($pro = $provincias->fetchObject()){
$html .= "<option value='".$pro->tb_idProvincia."'>".$pro->nombre."</option>";
}
echo json_encode($html);
}
PD: He ocupado autoload para cargar mis controladores y mi archivo .htaccess lo tengo configurado asi:
HTACCESS:
1
2
3
4
5
6
7
8
9
10
11
<IfModule mod_rewrite.c>
RewriteEngine on
ErrorDocument 404 http://URL/MIPROYECTO/error/
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(.*)/(.*) index.php?controller=$1&action=$2
</IfModule>
De antemano agradezco cualquier información y ayuda.
Valora esta pregunta


0