Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/12/2006, 11:15
quimer@
 
Fecha de Ingreso: noviembre-2006
Mensajes: 2
Antigüedad: 18 años, 4 meses
Puntos: 0
buscador de palabra o de una parte de ella

hola de nuevo, aquí traigo más dudas,

estoy haciendo un buscador de una base de datos, y no consigo que si introduzco una palabra incompleta me muestre los registros de la base de datos que contenga esta parte de la palabra, además si pongo una palabra+espacio+otra palabra mysql me da errores. llevo una semana con esto y no doy con el fallo, aquí os adjunto el código que ejecuto para hacer la búsqueda:

$query_rsbusqueda = " SELECT * FROM totalreg, codigo WHERE 1 = 1 ";


//Inicializamos las variables selectversion y selectcategoria cuando selectcodi es igual a Todos y mostramos todos los registros de la base de datos.
if($_POST['selectcodi'] == 1)
{
$_POST['selectversion'] == 'Todas';
$_POST['selectcategoria'] == 'Todas';
$query_rsbusqueda = $query_rsbusqueda. " AND codigo.idcodi = totalreg.idcodi ";
}

if($_POST['selectcodi'] == 1 && $_POST['dcorta'] != '')
{

$dc = $_POST['dcorta'];

if ($dc<>''){

//CUENTA EL NUMERO DE PALABRAS
$trozos=explode(" ",$dc);
$numero=count($trozos);
if ($numero==1) {

//SI SOLO HAY UNA PALABRA DE BUSQUEDA SE ESTABLECE UNA
//INSTRUCION CON LIKE

$query_rsbusqueda = $query_rsbusqueda." AND codigo.idcodi = totalreg.idcodi".
" LIKE '%$dc%' OR codigo.idcodi = totalreg.idcodi LIKE '%$dc'".
" OR codigo.idcodi = totalreg.idcodi LIKE '$dc%'";
} else if ($numero>1){
$query_rsbusqueda = $query_rsbusqueda. " AND".
" codigo.idcodi = totalreg.idcodi AND MATCH".
" totalreg.iddcorta AGAINST '".$dc."'";
}
}
}

espero que me podais ayudar que ya estoy desesperado

gracias de antemano