Problema de ajax del método Codeigniter relacionado con la URL
Frecuentes
Visto 267 veces
0
Tengo un controlador donde tengo un método llamado index. En este método, estoy recuperando datos de la base de datos y usando una biblioteca de paginación configurando variables para ver la paginación. Cuando agrego un nuevo registro, estoy presionando otra función usando ajax. Allí después de la inserción llamo
$this->index();
Ahora en el índice estoy comprobando una condición.
if($this->input->is_ajax_request()){
//dont load header and footer
}
pero el problema es que cuando llego al índice desde mi función de guardar, pierde la solicitud de ajax y mi condición en la función de índice no está marcada y el encabezado y el pie de página siempre están cargados. Quiero que la solicitud de ajax siga disponible incluso si salto de un método de codeigniter a otro. ¿Cualquier sugerencia? O alternativa. Porque no quiero crear otra función donde cree la paginación nuevamente con el encabezado y el pie de página omitidos.
1 Respuestas
1
Algo que puede ser útil es Clase de sesión de CodeIgniter que tiene un método flashdata. Flashdata es un bit de datos de sesión que solo se almacena para la próxima solicitud del servidor, luego se elimina.
En su función de guardar, podría tener esto al final:
$this->session->set_flashdata('ajax', true);
y como parte de la condición en su función de índice, podría tener:
if($this->input->is_ajax_request() || $this->session->flashdata('item')){
//dont load header and footer
}
Esto luego verificaría que la solicitud era en realidad una solicitud ajax O que una variable de sesión se ha configurado temporalmente para decirle a CodeIgniter que debe tratarse como una solicitud ajax.
Respondido el 12 de junio de 12 a las 10:06
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas ajax codeigniter url methods or haz tu propia pregunta.
Gracias, esto resolvió mi problema. Nunca he echado un vistazo a los datos flash, pero ahora me alegro de haberlo aprendido. muhammad raheel
también he encontrado en lugar de usar $this->index(); redirigir (myurl) está funcionando bien - muhammad raheel