Surge nuevo problema, en realidad el mismo, no respeta los ADN's, al hacer esta sentencia.
Despues de construirla completamente queda asi.
Código PHP:
$sql="SELECT * FROM producto WHERE des LIKE '%$texto%' OR tit LIKE '%$texto%' OR llave LIKE '%$texto%' AND ciudad='$ciudad' AND cat='$cat' ORDER BY id"
cuando $texto="a", me muestra todos los datos de la tabla sin respetar los AND's.
Edite el codigo completo en el primer mensaje
La tabla producto esta bien construida. Ayuda porfavor.
Con respecto a copiar lo que me das de ejemplos, no los copio sino que das el ejemplo de mi codigo por lo que es el mismo ($sql == $_pagi_sql).