Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/08/2009, 21:14
harris00ea
 
Fecha de Ingreso: julio-2009
Ubicación: Bogota
Mensajes: 37
Antigüedad: 17 años, 3 meses
Puntos: 0
Exclamación Problema Mostrando Resultados de Una Consulta a MySql con AJAX

Buenas Noches a Todos.

Agradezco su colaboración de antemano, mi problema es el siguiente:

He creado un formulario en donde en un textbox digito un nombre de sabor de helado, al pasar al siguiente textbox programé el evento "onfocus" para que me ejecute una consulta en MySql y que traiga los resultados de lo que he digitado en el textbox sabor.

El problema que tengo es que me trae todo lo qe hay en la tabla y no tiene en cuenta lo que he digitado en sabor, siempre me trae todo, ya no se que hacer, no se si el problema es lo que tengo implementado en AJAX, si estoy invocando mal el dato que necesito consultar.... en fin no encuentro una solución.

Codigo AJAX
Código PHP:
function objetoAjax(){
    var 
xmlhttp=false;
    try {
        
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (
e) {
                try {
                    
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (
E) {
                        
xmlhttp = false;
                }        
        }
        
         if (!
xmlhttp && typeof XMLHttpRequest!='undefined') {
              
xmlhttp = new XMLHttpRequest(); 
        }
        return 
xmlhttp;
}

function 
MostrarConsulta(datos){  
    
divResultado = document.getElementById('resultado');  
    var 
sabor = document.getElementById("SABOR").value; 
     
ajax=objetoAjax();  
     
ajax.open("GET", datos + '?sabor=' + escape(sabor));  
     
ajax.onreadystatechange=function() {  
        if (
ajax.readyState==4) {  
              
divResultado.innerHTML = ajax.responseText  
        
}  
    }  
    
ajax.send(null)  
} 

Codigo Form
Código PHP:
<form action="Prueba.php" method="post" name="form1" id="form1">
  <
table align="center">
    <
tr valign="baseline">
      <
td nowrap="nowrap" align="right"><font face="Verdana, Geneva, sans-serif">Fecha:</font></td>
      <
td><input type="text" name="FECHA" value="" size="32" id="dateArrival" onclick="popUpCalendar(this, form1.dateArrival, 'yyyy-mm-dd');"/></td>
    </
tr>
    <
tr valign="baseline">
      <
td nowrap="nowrap" align="right"><font face="Verdana, Geneva, sans-serif">Sabor:</font></td>
      <
td><input type="text" name="SABOR" value="" size="32" id="SABOR" /></td>
    </
tr>
    <
tr valign="baseline">
      <
td nowrap="nowrap" align="right"><font face="Verdana, Geneva, sans-serif">Lote:</font></td>
      <
td><input type="text" name="LOTE" value="" size="32" onfocus="MostrarConsulta('ConSabor.php'); return false"/></td>
    </
tr>
    <
tr valign="baseline">
      <
td nowrap="nowrap" align="center" colspan="2"><div id="resultado" align="center"></div></td>
    </
tr>
    <
tr valign="baseline">
      <
td nowrap="nowrap" align="right">&nbsp;</td>
      <
td>&nbsp;</td>
    </
tr>
    <
tr valign="baseline">
      <
td nowrap="nowrap" align="right">&nbsp;</td>
      <
td>&nbsp;</td>
    </
tr>
    <
tr valign="baseline">
      <
td nowrap="nowrap" align="center" colspan="2">&nbsp;</td>
    </
tr>
    <
tr valign="baseline">
      <
td nowrap="nowrap" align="center" colspan="2"><input type="button" value="Insertar Registro" onclick="valida_envia()" />
      <
input name="Restablecer" type="reset" id="button" value="Limpiar Formulario" onclick="Actualiza()" /></td>
    </
tr>
  </
table>
  <
input type="hidden" name="MM_insert" value="form1" />
</
form> 

Codigo Consulta PHP
Código PHP:
<?php
//Configuracion de la conexion a base de datos
$bd_host = "localhost"; 
$bd_usuario = "admin"; 
$bd_password = "admin"; 
$bd_base = "hsm";

$con = mysql_connect($bd_host, $bd_usuario, $bd_password);

mysql_select_db($bd_base, $con); 

$SABOR = $_GET[ 'SABOR' ]; 

$consulta = mysql_query("SELECT * FROM SABORES WHERE SABOR LIKE '%".$SABOR."%' ",$con );
echo 
'<table border="1" bordercolor"gray" align="center">
        <tr>
        <td align="center" width="20"><font face="Verdana, Geneva, sans-serif" size"-1">Accion1</td>
        <td align="center" width="20"><font face="Verdana, Geneva, sans-serif" size"-1">Accion2</td>
        <td align="center" width="200"><font face="Verdana, Geneva, sans-serif" size"-1">IDSabor</td>
        <td align="center" width="200"><font face="Verdana, Geneva, sans-serif" size"-1">Sabor</td>
        </tr>
        </table>'
;
$encontrados = mysql_num_rows($consulta);
if(
$encontrados > 0){ 
    while(
$row = mysql_fetch_array($consulta)){  
        echo   
        
'
        <table align="center" border="1" bordercolor"gray">
            <tr>
                <td align="center" width="20"><font face="Verdana, Geneva, sans-serif" size"-1"><a href="FormActSabores.php?IDSABOR='
.$row['IDSABOR'].'">Editar</a></font></td> 
                <td align="center" width="20"><font face="Verdana, Geneva, sans-serif" size"-1"><a href="FormBorraSabores.php?IDSABOR='
.$row['IDSABOR'].'">Borrar</a></font></td>
                <td align="center" width="200"><font face="Verdana, Geneva, sans-serif" size"-1">'
.$row['IDSABOR'].'</font></td>
                <td align="center" width="200"><font face="Verdana, Geneva, sans-serif" size"-1">'
.$row['SABOR'].'</font></td>
            </tr>    
        </table>
        
        '
;    
    } 
}else{ 
    echo 
'
    <br></br>
    <p class="Titulo" align="center"><font face="Verdana, Geneva, sans-serif" size="4"><b>No Se Ha Encontrado Ningun Dato Que         Corresponda A Su Consulta</b></font></p>
 '
; 
}  
?>