Foros del Web » Programando para Internet » PHP »

seleccionar en la base de datos

Estas en el tema de seleccionar en la base de datos en el foro de PHP en Foros del Web. Hola amigas y amigos a ver si me pueden ayudar con esto: Tengo un buscador php+ajax que me busca bien en la bbdd. Deben llenarse ...
  #1 (permalink)  
Antiguo 01/11/2018, 11:16
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
seleccionar en la base de datos

Hola amigas y amigos a ver si me pueden ayudar con esto:

Tengo un buscador php+ajax que me busca bien en la bbdd.

Deben llenarse dos campos imput para que busque en la bbdd

input 1: email
input 2: password

La cuestion es que cuando relleno solo el campo "email" no me muestra resultados, ya que deben estar rellenos ambos campos.

Pero cuando meto, solo, un caracter en el segundo campo "password" entoces automaticamente me salen ya resultados.

Y yo lo que necesito es que me muestre resultados cuando el campo "email" esté relleno por completo y cuando el dato introducido en el segundo campo esté tambien totalmente introducido es decir que si debo
meter en el campo "password": tomate, pues que no me empieze a mostrar resultados con solo meter la "t"
de "tomate", sino cuando se haya metido la palabra completa en "password" (igual que meter la palabra completa a buscar en "email").

Cualquier ayuda es bienvenida y de agradecer de antemano.

Mi codigo es el siguiente:

Código PHP:
Ver original
  1. while($fila = mysqli_fetch_assoc($res))
  2.                      
  3.                         {
  4.                             if( (strpos($fila['email'], $_POST['email'])!==false) && (strpos($fila['password'], $_POST['password'])!==false) )
  5.  
  6.                                 {
  7.                                     //Resaltamos en color los caracteres coincidentes de los resultados obtenidos
  8.  
  9.                                     $email = str_replace ( $_POST["email"], '<span class="resaltado">'.$_POST["email"].'</span>', $fila['email']);
  10.  
  11.                                     $password = str_replace ( $_POST["email"], '<span class="resaltado">'.$_POST["email"].'</span>', $fila['password']);
  12.  
  13.  
  14.  
  15.                                     //Mostramos los resultados obtenidos
  16.  
  17.                                     echo
  18.  
  19.                                         '
  20.                                             <tr>
  21.  
  22.                                                 <td>' . $email . '</td>
  23.  
  24.                                                 <td>' . $password . '</td>
  25.  
  26.                                             </tr>
  27.                                         ';
  28.                                
  29.                                 } //Fin de if(strpos...
  30.                                        
  31.                         } //Fin de while

Última edición por mensajeescrito; 01/11/2018 a las 11:22
  #2 (permalink)  
Antiguo 01/11/2018, 14:48
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 10 meses
Puntos: 379
Respuesta: seleccionar en la base de datos

Nigun buscador hacer lo que esperas, lo que si puedes hacer es que comience a buscar a partir de cierto numero de caracteres por ejemplo 3 o mas.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 01/11/2018, 15:03
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: seleccionar en la base de datos

ummm me vale eso que dices hhs.

Podrias indicarme como hacer algo asi en mi codigo, no se como implementar eso que comentas, te lo agradeceria mucho.

Creo que eso solucionaría mi problema.
  #4 (permalink)  
Antiguo 01/11/2018, 15:47
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: seleccionar en la base de datos

Se me ha ocurrio usar strlen para contar caracteres de la palabra a buscar.
Si el numero de caracteres es 15 por ejemplo.

Pues entonces hace la busqueda.

Y funciona.

Espero hhs que sea eso lo que se te habia ocurrido a ti tambien.

Y pensaste otra cosa te agradecería saber tu idea.

Un saludo y gracias por alumbrarme el camino

Etiquetas: mysql
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 20:43.