Cita:
Iniciado por Torus de la forma original no funciona, es decir $variable = "%".$variable."%";
Cuando utilizás busquedas por coincidencia de patrones (utilizando % y _) no se utiliza el = o el <> para realizar la comparación, sino LIKE y NOT LIKE. En tu consulta original seria, por ejemplo:
SELECT * FROM marca WHERE id_modelo LIKE '%1'
Esa consulta va a seleccionar todas las filas cuyo campo id_modelo termine en 1. No importa el tipo del campo, (puede ser int, char, etc) la forma de realizar la comparacion es la misma se utiliza % para cualquier cantidad de caracteres y _ para sólo un caracter.
Saludos.