Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Mostrar resultado de Busqueda

Estas en el tema de Mostrar resultado de Busqueda en el foro de Frameworks JS en Foros del Web. Hola compañeros de Foros del Web, tengo un problema con una busqueda que he estado realizando, con PHP todo me funciona bien, el problema es ...
  #1 (permalink)  
Antiguo 29/06/2011, 18:53
 
Fecha de Ingreso: enero-2011
Ubicación: Maracaibo
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 2
Mostrar resultado de Busqueda

Hola compañeros de Foros del Web, tengo un problema con una busqueda que he estado realizando, con PHP todo me funciona bien, el problema es que al enviar los datos desde el formulario, me envia a otra pagina y me muestra los resultados dependiendo de los campos que se llenaron o no, cuando los campos estan vacios, se deben mostrar todos los registros, ningun campo es obligatorio, todo esto me funciona correctamente en PHP.

Se me pidio que se mostraran los resultados en un div en la parte inferior del formulario y no he logrado hacer este proceso, les dejo aqui mi codigo, consta de 2 archivos
buscar.php
Código PHP:
<?php
session_start
();
if(!isset(
$_SESSION['us_id'])){
header("Location: ../index.php"); 
} else { 
//$admin=$_SESSION['tipo'];
$usuario=$_SESSION['us_id'];
$admin=$_SESSION['us_tipo'];
$fecha_actual=date("d-m-Y");

include(
"conexion.php");
include(
'./Scripts/funcion.php');
$conexion = new ControlBD();
$conexion->conectar();
$conexion->seleccionarBD();

$query1="SELECT us_id, us_nombre, us_apellido, us_email, us_cargo, us_tipo from cgusuarios INNER JOIN cgempresa ON us_idempresa=em_id WHERE em_id=1111 and us_tipo=3 || us_tipo=4";

$query "select em_id,em_nombre from cgempresa ";    
$result=$conexion->ejecutarQuery($query);
$result2=$conexion->ejecutarQuery($query1);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>Registro de Empresas y/o Clientes</title>
    <script type="text/javascript" src="./Scripts/jquery-1.6.1.js"></script>
    <script type="text/javascript" src="./Scripts/watermarkinput.js"></script>
    <script type="text/javascript" src="Scripts/maskedinput-1.3.js"></script>
    <script type="text/javascript" src="./Scripts/jquery.jqtransform.js"></script>
    <link rel=stylesheet href="./Style/default.css" type="text/css">
    <link rel=stylesheet href="./Style/menuH.css" type="text/css">
    <link rel=stylesheet href="./Style/jqtransform.css" type="text/css">
</head>
<script type="text/javascript">
function showUser(stat,rec,tic,emp,desc,fch)
{
if (stat=="" || rec=="" || tic=="" || emp=="" || desc=="" || fch=="")
  {
  document.getElementById("txtHint").innerHTML="";
  return;
  } 
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","buscar_BD.php?stat="+stat+"&rec="+rec+"&tic="+tic+"&emp="+emp+"&desc="+desc+"&fch",true);
xmlhttp.send();
}
</script>
<body>
<script>
jQuery(function($){
   
   $("#fecha").Watermark("Fecha");
   $("#ticket").Watermark("Numero del Ticket");
   $("#descripcion").Watermark("Palabra clave");
                   
});
$(function() {
    //Todos los formularios con clase jqtransform
     $('form').jqTransform({imgPath:'.Style/img/'});
 
});
$(function($) { 
    $('#fecha').mask("99-99-9999",{placeholder:" "});
    }
); 
</script>
<?
    
include('menu.php');
?>
</br>
<!--<form method="post" action="buscar_BD.php" onsubmit="jQuery.Watermark.HideAll(); ">-->
<form>
<div class="centrado">
<table  style="border:1px solid #000000; width:760px">
  <th colspan="6"><div align="center">Seleccione un Criterio de Busqueda</div></th>
    <tr>
           <th>Estatus:</th>
        <td><select name="estatus" id="estatus">
        <option value="0">--- Seleccione ---</option>
        <option value="Pendiente">Pendiente</option>
        <option value="En Proceso">En Proceso</option>
        <option value="Terminado">Terminado</option>
        </select></td>
        <th>Recursos</th>
        <td><select name="recursos" id="recursos">
        <option value="0">--- Seleccione ---</option>
<? while($array1=mysql_fetch_array($result2)){$nombre1=$array1['us_nombre']. " " $array1['us_apellido']; ?>
        <option value="<?=$array1['us_id'];?>"><?=$nombre1;?></option><? ?>
        </select></td>
        <th>N° de Ticket:</th>
        <td><input name="ticket" id="ticket" type="text" /></td>
    </tr>
    <tr>
        <th>Empresa</th>
        <td><select name="empresa" id="empresa">
        <option value="0">--- Seleccione ---</option>
<? while($emp=mysql_fetch_array($result)){ ?>
        <option value="<?=$emp['em_id'];?>"><?=$emp['em_nombre'];?></option><? ?>
        </select></td>

        <th>Descripcion (Palabra Clave):</th>
        <td><input name="descripcion" id="descripcion" type="text"  size="21"/></td>
        <th>Fecha:</th>
        <td><input name="fecha" id="fecha" type="text" size="8" /></td>
     </tr>
     <tr>
        <!--<input type="submit" name="buscar" value="Buscar" />-->
         <td colspan="4"><input type="button" name="buscar" value="Buscar" onclick="showUser(estatus.value, recursos.value,ticket.value,empresa.value,descripcion.value,fecha.value)" />
         
         </td>
       </tr>
</table>
</div>
<br />
<br />
<div id="txtHint" class="centrado"><b>Mostrando</b></div>
</form>
</body>
</html>
<? ?>
buscar_BD.php
Código PHP:
<?php
session_start
();
if(!isset(
$_SESSION['us_id'])){
header("Location: ../index.php"); 
} else { 
$usuario=$_SESSION['us_id'];
$admin=$_SESSION['us_tipo'];
?>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<link rel=stylesheet href="./Style/default.css" type="text/css">
<link rel=stylesheet href="./Style/menuH.css" type="text/css">
<script type="text/javascript" src="accion.js"></script>

<?php

$estatus
=$_GET['stat'];
$recursos=$_GET['rec'];
$ticket=$_GET['tic'];
$empresa=$_GET['emp'];
$descrip=$_GET['desc'];
$fecha=cambiar_a_mysql($_GET['fch']);


echo 
$estatus;


include(
"conexion.php");
include(
'./Scripts/funcion.php');
$conexion = new ControlBD();
$conexion->conectar();
$conexion->seleccionarBD();

/*$estatus=$_POST['estatus'];
$recursos=$_POST['recursos'];
$ticket=$_POST['ticket'];
$empresa=$_POST['empresa'];
$descrip=$_POST['descripcion'];
$fecha=cambiar_a_mysql($_POST['fecha']);*/

 
 
$query="SELECT ta_id, ta_fechalimite, ta_fechaentrega, ta_status, ta_comentario, ta_prioridad, ta_idreq, us_nombre,
             us_apellido, ta_accionC, req_descripcion,em_nombre FROM cgtarea 
               INNER JOIN cgrequerimientos on ta_idreq=req_id 
               INNER JOIN cgusuarios ON ta_idrecurso=us_id
               INNER JOIN cgempresa ON em_id=req_idempresa"
;
//* Se agregaron los 2 guines a la condicion de la Fehca para tomara en cuenta la mascara creada en buscar.php*//
if(($estatus!='0') || ($recursos!='0') || ($ticket!='') || ($empresa!='0') || ($descrip!='') || ($fecha!='--')){
    
$query.= " WHERE ";
}
if(
$estatus!='0'){
    
$query.= "ta_status = '$estatus'";
}
if(
$recursos!='0'){
    if(
$estatus!='0'){
        
$query.= " AND us_id ='$recursos'";
    } else {
        
$query.= " us_id ='$recursos'";
    }
}
if(
$ticket!=''){
    if((
$estatus!='0') || ($recursos!='0')){
        
$query.= " AND ta_id = '$ticket'";
    } else {
        
$query.= " ta_id ='$ticket'";
    }
}
if(
$empresa!='0'){
    if((
$estatus!='0') || ($recursos!='0') || ($ticket!='')){
        
$query.= " AND em_id = '$empresa'";
    }else{
        
$query.= " em_id = '$empresa'";
    }
}
if(
$descrip!=''){
    if((
$estatus!='0') || ($recursos!='0') || ($ticket!='') || ($empresa!='0')){
           
$query .= " AND req_descripcion LIKE '%$descrip%'";
        
    }else{
           
$query .= " req_descripcion LIKE '%$descrip%'";
    }
}
if(
$fecha!='--'){
    if((
$estatus!='0') || ($recursos!='0') || ($ticket!='') || ($empresa!='0') || ($descrip!='')){
           
$query .= " AND ta_fechaentrega = '$fecha'";
        
    }else{
           
$query .= " ta_fechaentrega = '$fecha'";
    }
}
$result=$conexion->ejecutarQuery($query);
 
?>



<form>


<div class="centrado">
<table class="tablas" style="font-family:Tahoma, Geneva, sans-serif; font-size:12px;">
    <tr>
        <th>Ticket</th>
        <th>Ticket Requerimiento</th>
        <th>Descripcion del Requerimeinto</th>
        <th>Recurso</th>
        <th>Estatus</th>
        <th>Comentario</th>
        <th>Accion Cliente</th>
        <th>Fecha Limite</th>
        <th>Fecha Entrega</th>
       </tr>
    <? while($array=mysql_fetch_array($result))
    {
      
$id=$array['ta_id'];
      
$cstatus=$array['ta_status'];
    
?>
    <tr>
        <td><?=$array['ta_id']; ?></td>
        <td><?=$array['ta_idreq']; ?></td>
        <td><?=str_ireplace($descrip,"<span style='background-color: #88AAEE'>$descrip</span>",$array['req_descripcion']);?></td>
        <td><?=$array['us_nombre']." ".$array['us_apellido']; ?></td>
        <td><?=$array['ta_status']; ?></td>
        <td><?=$array['ta_comentario']; ?></td>
        <td><?=$array['ta_accionC']; ?></td>
        <td><?=cambiar_fecha($array['ta_fechalimite']); ?></td>
        <td><?=cambiar_fecha($array['ta_fechaentrega']); ?></td>
       
    </tr>
<?  }?>
</table>
</div>
</form>
<? ?>
El Codigo AJAX q coloque en buscar.php no me esta funcionando correctamente, no se que podria ser

Espero puedan ayudarme, Saludos
  #2 (permalink)  
Antiguo 30/06/2011, 11:41
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años
Puntos: 344
Respuesta: Mostrar resultado de Busqueda

Si usas JQuery, este también tienes funciones que facilitan enormemente el trabajo con AJAX ($.ajax, $.post, $.get, ...)

Te dejo un link con ejemplos:

http://www.librosweb.es/ajax/capitul...ia_jquery.html

Si, aun así quieres hacerlo con AJAX, yo utilizaría firebug (extensión de Firefox) para ver si la llamada con AJAX se está realizando correctamente (se pasan los parámetros y se recibe respuesta).

[EDITO]

El error está en como intentas tomar los valores de los selects (incorrectamente). Sería document.forms[0].estatus.value en vez de estatus.value y así con los demás

Si necesitas alguna ayuda más, aquí estamos.

Última edición por alexg88; 30/06/2011 a las 11:47
  #3 (permalink)  
Antiguo 01/07/2011, 07:17
 
Fecha de Ingreso: enero-2011
Ubicación: Maracaibo
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 2
Respuesta: Mostrar resultado de Busqueda

Hola alexg88 gracias por respuesta, probe enviando los selects y los campos de la manera como me sugeriste y de igual forma no me carga la consulta, no hace nada cuando presiono el boton de buscar.

Con respecto a Jquery, leere el link que me pasaste para ver si logro solucionar lo que quiero, por los momentos solucione con un iframe.

Saludos y gracias

Etiquetas: ajax, resultados, busquedas
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 03:25.