PHP - Persistencia de variables php - ajax

   
Vista:

Persistencia de variables php - ajax

Publicado por Gabriel Barrios gbarriosf@gmail.com (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:
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
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Persistencia de variables php - ajax

Publicado por Gonzalo (338 intervenciones) el 24/09/2014 01:14:45
si el problema son las variables de session tal vez te falte la orden open_session() al inicio del archivo.

espero sea de ayuda, suerte, salu2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar