En todo caso será así, no?
...MATCH (LCASE(title),LCASE(short_description)) AGAINST ('$keyword')
LOWER(str)=LCASE(str) espera 1 string, no una lista de strings...
no es algo que domine, busca en el
manual si lo aclara.... pero diría que se debería hacer la transformación en el momento de crear el indice...
CREATE TABLE nombretabla (
...
FULLTEXT (LCASE(title),LCASE(short_description))) ENGINE=MyISAM;
Cita: By default, the search is performed in case-insensitive fashion. However, you can perform a case-sensitive full-text search by using a binary collation for the indexed columns. For example, a column that uses the latin1 character set of can be assigned a collation of latin1_bin to make it case sensitive for full-text searches.