búsqueda múltiple php sql

Quiero escribir un código php que pueda buscar varias palabras clave separadas por una columna. Actualmente, mi código funciona con precisión para una sola palabra clave en particular. También; ¿Qué cambios debo hacer en la tabla SQL?

<?php
include('db.php');
if($_POST)
{
$q=$_POST['searchword'];
$sql_res = mysql_query("SELECT tag_id, tag_name FROM ttl_tags WHERE tag_name like '%$q%' ORDER BY tag_id LIMIT 5");
while($row=mysql_fetch_array($sql_res))
{
$tagid=$row['tag_id'];
$tagname=$row['tag_name'];
$re_tagname='<b>'.$q.'</b>';
$final_tagname = str_ireplace($q, $re_tagname, $tagname);

?>

preguntado el 12 de junio de 12 a las 15:06

¿Cuántas palabras clave como máximo buscaría? -

y ¿cuál es el tamaño máximo esperado de ttl_tags? ¿En número de etiquetas diferentes O número de filas totales? (más o menos...) -

máx. el tamaño de ttl_tags será tres. ttl_id es una identificación dada a ttl_tags.. por ejemplo: "1";"blue"==> ttl_id=1 & ttl_tags=blue. El usuario buscará palabras clave, también conocidas como ttl_tags -

1 Respuestas

Si estoy leyendo bien su pregunta, ¿quiere buscar varias palabras clave en una sola columna? Si es así puedes hacer:

 $sql_res = mysql_query("SELECT tag_id, tag_name FROM ttl_tags 
            WHERE tag_name like '%$q%' OR tag_name like 'ANOTHER_PARAMETER'  
            ORDER BY tag_id LIMIT 5"); 

Puedes poner tantos "OR" como quieras.

Respondido el 12 de junio de 12 a las 16:06

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.