Persistencia de variables php - ajax
Publicado por Gabriel Barrios (1 intervención) el 24/09/2014 00:24:09
Buenas tardes.
Tengo un script que trabaja como paginador, cargando via ajax otra página con los registros de una base de datos.
El paginador recoge una variable de sesión para pasarla via POST a la página de detalle, junto con una variable que lleva el número de página a mostrar.
El problema es que la página que se carga recibe la variable de la página, pero no recibe la variable de sesión, a pesar de que los parámetros van concatenados.
Este es el código del paginador:
Agradezco a quien me pueda ayudar a definir qué falta en los scripts para que funcionen
Gracias de antemano
Tengo un script que trabaja como paginador, cargando via ajax otra página con los registros de una base de datos.
El paginador recoge una variable de sesión para pasarla via POST a la página de detalle, junto con una variable que lleva el número de página a mostrar.
El problema es que la página que se carga recibe la variable de la página, pero no recibe la variable de sesión, a pesar de que los parámetros van concatenados.
Este es el código del paginador:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<script type="text/javascript">
$(document).ready(function(){
$.urlParam = function(name){
var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(window.location.href);
if (results==null){
return null;
}
else{
return results[1] || 0;
}
}
var tabla = decodeURIComponent($.urlParam('lista'));
var acorden='<?php echo isset($_SESSION["orden"]) ? $_SESSION["orden"] : 0; ?>';
function loading_show(){
$('#loading').html("<img src='../Imagenes/ajax-loader.gif' />").fadeIn('fast');
}
function loading_hide(){
$('#loading').fadeOut('fast');
}
function loadData(page, orden){
loading_show();
$.ajax
({
type: "POST",
url: tabla,
data: "page="+page+"&orden="+acorden,
success: function(msg)
{
$("#jtable-main-container").ajaxComplete(function(event, request, settings)
{
loading_hide();
$("#jtable-main-container").html(msg);
});
}
});
}
alert(acorden);
loadData(1, acorden); // For first time page load default results
$('#divpagination li.active').live('click',function(){
var page = $(this).attr('p');
loadData(page, acorden);
});
$('#go_btn').live('click',function(){
var page = parseInt($('.goto').val());
var no_of_pages = parseInt($('.total').attr('a'));
if(page != 0 && page <= no_of_pages){
loadData(page, acorden);
}else{
alert('Digite una pagina entre 1 y '+no_of_pages);
$('.goto').val("").focus();
return false;
}
});
});
</script>
Y este el código que lee los parámetros enviados por el paginador:
<?php
if($_POST['page'])
{
$page = $_POST['page'];
$cur_page = $page;
$page -= 1;
$per_page = 10;
$previous_btn = true;
$next_btn = true;
$first_btn = true;
$last_btn = true;
$start = $page * $per_page;
if(isset($_POST['orden']))
{
if ($_POST['orden']=0)
{
$criterio = "";
} else {
$criterio = $_POST['orden'];
}
}else {
$criterio = "";
}
Agradezco a quien me pueda ayudar a definir qué falta en los scripts para que funcionen
Gracias de antemano
Valora esta pregunta


0