Foros del Web » Programando para Internet » PHP »

Buscador php, listar selección

Estas en el tema de Buscador php, listar selección en el foro de PHP en Foros del Web. Hola Tengo un buscador php que conecta con una base de datos para mostrar los resultados de la búsqueda. Necesito que cuando el usuario escriba ...
  #1 (permalink)  
Antiguo 09/10/2011, 13:13
Avatar de yayo_cev  
Fecha de Ingreso: julio-2004
Ubicación: IntheMatrix
Mensajes: 69
Antigüedad: 15 años, 4 meses
Puntos: 1
Pregunta Buscador php, listar selección

Hola
Tengo un buscador php que conecta con una base de datos para mostrar los resultados de la búsqueda.
Necesito que cuando el usuario escriba una inicial en el buscador, se muestre un listado de los resultados por esa inicial.
Por ejemplo si pone la letra A, que le opción de elegir entre Alfonso, Alfredo, Alberto, etc.
¿Cómo puedo conseguirlo?
Gracias por su ayuda
  #2 (permalink)  
Antiguo 09/10/2011, 14:44
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 873
Antigüedad: 13 años
Puntos: 32
Respuesta: Buscador php, listar selección

Hola, lo que pides no se hace con PHP, en tal caso con javascript, aunque pienso que lo mas seguro es con jquery o ajax, preguntar por ahi, además creo que de esto hay muchos ejemplos por la red.

Te digo esto porque en este foro vas a perder el tiempo, lo que pides no se hace con PHP.

Saludos.
  #3 (permalink)  
Antiguo 09/10/2011, 19:41
 
Fecha de Ingreso: enero-2010
Mensajes: 17
Antigüedad: 9 años, 10 meses
Puntos: 0
De acuerdo Respuesta: Buscador php, listar selección

Cita:
Iniciado por gogupe Ver Mensaje
Hola, lo que pides no se hace con PHP, en tal caso con javascript, aunque pienso que lo mas seguro es con jquery o ajax, preguntar por ahi, además creo que de esto hay muchos ejemplos por la red.

Te digo esto porque en este foro vas a perder el tiempo, lo que pides no se hace con PHP.

Saludos.
gogupe tiene razon, pero lo que quieres es un motor que te genere sugerencias para que ayude al usuario, eso se hace con Ajax y php.

nose si me dejen postear un codigo ajax, pero bueno esto te ayudara :

Este archivo seria tu index.html o ajax.html, como quieras.
Código:
<!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" xml:lang="en" lang="en">

<head>
	<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
	<meta name="author" content="Reinaldo García" />

	<title>Untitled 2</title>
    <script type="text/javascript">
        function MostrarSugerencia(str)
        {
            if (str.length==0)
            {
                
                document.getElementById("txtSugerencia").innerHTML="";
                return;
                
            }
            if(window.XMLHttpRequest)
            {//IE7+, Mozilla, Opera, Chrome
                xmlhttp=new XMLHttpRequest();
                
            }
            else
            {// IE5, IE6
                xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
                
            }
            xmlhttp.onreadystatechange=function()
            {
              if (xmlhttp.readyState==4 && xmlhttp.status==200)
              {
                document.getElementById("txtSugerencia").innerHTML=xmlhttp.responseText;
              }  
                
            }
            xmlhttp.open("GET","obtenerSugerencia.php?q="+str,true);
            xmlhttp.send();            
            
        }
    
    </script>
</head>

<body>
<fieldset align="center" style="width: 50%;">
<legend>Sugerencias</legend>
<p><b>Escriba en la Caja de Texto</b></p>
<form>
<p>Primer Nombre :<input type="text" onkeyup="MostrarSugerencia(this.value)" size="20" /></p>
<p>Sugerencias :<span id="txtSugerencia"></span></p>
</form>


</fieldset>


</body>
</html>

y este es nuestro archivo principal donde se genera la consulta
en obtenerSugerencia.php
imagina que haces una consulta a lo que quieres mostrar y en vez de las asignaciones manuales del array pones el resultado de la consulta y te trabajaria igual que eso, pruebalo, correlo y luego tiras.

Código:
<?php

/**
 * @author Reinaldo García
 * @copyright 2011
 */

//un reguero de vainas en array
$a[]="Ana";
$a[]="Juan";
$a[]="Reinaldo";
$a[]="Luis";
$a[]="Miguel";
$a[]="Jose";
$a[]="Belkis";
$a[]="Verioska";
$a[]="Luisa";
$a[]="Alex";
$a[]="Ingrid";

$q=$_GET["q"];
if(strlen($q)>0)
{
    $sugerencia ="";
    for($i=0;$i<count($a);$i++)
    {
        if(strtolower($q)==strtolower(substr($a[$i],0,strlen($q))))
        {
            if($sugerencia=="")
            {
                $sugerencia=$a[$i];
            }else
            {
                $sugerencia=$sugerencia." , ".$a[$i];
            }
            
        }
    }
}

if($sugerencia=="")
{
    $response="No hay sugerencias";
    
}
else
{
    $response=$sugerencia;
}
echo $response;

?>
Suerte

Etiquetas: buscadores, usuarios
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 22:55.