Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/05/2011, 15:15
Avatar de eminem24
eminem24
 
Fecha de Ingreso: julio-2008
Mensajes: 68
Antigüedad: 15 años, 9 meses
Puntos: 0
Busqueda Como Realizar Busquedas sin Case Sensitive

Hola a todos, estoy trabajando en una aplicación para mostrar resultados y buscar dentro de una base de datos. La cuestión es que todo va genial pero tengo que buscar las palabras con case sensitive, si busco un usuario que se llama "Pepe" y busco "pepe" no lo encuentra.

Que solución hay para eso? he buscado en la red y he encontrado una respuesta que no me acaba de convencer. Y es añadiendo una codificación en los campos de la base de datos, o eso creo. Hablan de utf8_general_ci que hay que añadirlo en los campos y dicen que así después busca sin case sensitive. Pero yo estoy usando una base de datos de phpbb y no quiero modificar nada porque eso ya está hecho porque buscando dentro de phpbb no es case sensitive.

Aquí dejo el método que estoy usando para la aplicación:


Código PHP:
<?
// Parte de la página del formulario

echo '<form action="resultados-busqueda.php" method="post">
      <select name="tipobusqueda">
      <option value="username">Artista
      <option value="real_filename">Título
      </select>
      <input name="terminobusqueda" type=text>
      <input type=submit value="Buscar">
      </form><div style="margin:10px 0;"></div>'
;

//////

// Parte de resultados-busqueda.php

$tipobusqueda=$_POST['tipobusqueda'];
$terminobusqueda=$_POST['terminobusqueda'];

$db mysql_pconnect("localhost""root""pass");

mysql_select_db("nombre_db");

if(
$tipobusqueda=="real_filename")
{
    
$consulta "SELECT * FROM phpbb_attachments WHERE ".$tipobusqueda." LIKE '%".$terminobusqueda."%'";
}
if(
$tipobusqueda=="username")
{
    
$consulta "SELECT * FROM phpbb_users WHERE ".$tipobusqueda." LIKE '%".$terminobusqueda."%'";
}

//////
?>

He puesto solo la parte de código del sistema de búsqueda para simplificarlo y que se vea más claro.