Foros del Web » Programando para Internet » Javascript »

Buscador con paginado

Estas en el tema de Buscador con paginado en el foro de Javascript en Foros del Web. Hola a todos ... estoy teniendo un problema con el que he batallado muchísimo pero no acabo por resolverlo, y por eso posteo acá para ...
  #1 (permalink)  
Antiguo 02/11/2009, 09:16
 
Fecha de Ingreso: abril-2009
Ubicación: Miami
Mensajes: 182
Antigüedad: 15 años, 7 meses
Puntos: 8
Exclamación Buscador con paginado

Hola a todos ... estoy teniendo un problema con el que he batallado muchísimo pero no acabo por resolverlo, y por eso posteo acá para ver si me dan alguna idea ...

tengo un buscador que consiste en un form y muestra los resultados en la misma página, en un DIV, pero ejecuta otra, es decir, muestra los resultados en el DIV pero la busqueda se realiza en otra, es así:

index.php
Código PHP:

<script language="javascript" src="javascript/jquery-1.3.2.js"></script>
<script language="javascript">
$(document).ready(function() {
   // crear un loader  - no es necesario
    $().ajaxStart(function() {
        $('#loading').show();
        $('#result').hide();
    }).ajaxStop(function() {
        $('#loading').hide();
        $('#result').fadeIn('slow');
    });
   // Interceptamos el evento submit que viene del form
    $('#form, #fo3').submit(function() {
  // Enviamos el formulario usando AJAX
        $.ajax({
            type: 'GET',//definimos el método de envío
            //url: $(this).attr('action'),//para enviar las variables a la misma página
            url: "search.php",//para forzar enviar a otra página especificada
            data: $(this).serialize(),
            // Mostramos un mensaje con la respuesta de PHP en el div result
            success: function(data) {
                $('#result').html(data);
            }
        })        
        return false;
    });

})  
</script>

<form method="GET" action="search.php" id="fo3" name="fo3" >

<input name="q" type="text"  id="search_box"  />

<select name="barrio" id="barrio">
  <option value="1">Barrio1</option>
  <option value="2">Barrio2</option>
</select>

<select name="categoria" id="categoria">
  <option value="1">categoria1</option>
  <option value="2">categoria2</option>
</select>
</form>

<div id="loading" style="display:none" align="center"><img src="activos/bigLoader.gif" /></div>
<div id="result" align="center"></div> 
search.php
Código PHP:
<?php include ("include/conexion.php");

if (isset(
$_GET['last_msg_id'])){ $last_msg_id=$_GET['last_msg_id'];}
if (isset(
$_GET['action'])){ $action=$_GET['action'];}

if(!(isset(
$action))){?>

<!-- CSS & script para paginado scroll-->
<link rel="stylesheet" href="css/9lessons.css" type="text/css" />
<script type="text/javascript" src="javascript/jquery-1.3.2.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        var q = '<?php echo $_GET['q']; ?>';
        var barrio ='<?php echo $_GET['barrio']; ?>';
        var categoria = '<?php echo $_GET['categoria']; ?>';
        
        
        function last_msg_funtion() 
        { 
           var ID=$(".name_div_result:last").attr("id");
            $('div#last_msg_loader').html('<img src="bigLoader.gif">');
            $.post("search.php?action=get&last_msg_id="+ID+"&q="+q+"&barrio="+barrio+"&categoria="+categoria,
            
            function(data){
                if (data != "") {
                $(".message_box:last").after(data);            
                }
                $('div#last_msg_loader').empty();
            });
        };  
        
        $(window).scroll(function(){
            if  ($(window).scrollTop() == $(document).height() - $(window).height()){
               last_msg_funtion();
            }
        }); 
    });
</script>

<?php include('load_first.php');?>

<div id="last_msg_loader"></div>

<?php }else{ include('load_second.php');}?>
en la página load_first.php lo que se hace es cargar los 10 primeros registros, y load_second.php lo que hace es comparar con $last_msg_id y va mostrando 5 registros, es un "paginado" escroleado.
En general, todo funciona, PERO, solo por separado, es decir, si pruebo solo el index.php funciona de maravillas, si pruebo solo el search.php pues funciona de maravillas y "pagina escroleando" super bien, PERO, cuando pongo al index apuntar al search pues ahí el escroleado no funciona. Estuve viendo que cuando haces una llamada en jquery pues no puedo hacer otra llamada de jquery o javascript dentro de una página que fue creada a través de jquery, en fin, no se como salir del problema, quizá es problema de concepto, lo que no se es como poder hacer esto .. si alguien tiene alguna idea por favor .. gracias !!!
__________________
-----------------------------------
Éxitos !!! .. joao
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:34.