No. Los acentos inversos (`) se usan para encerrar nombres de bases, tablas, columnas, procedimientos almacenados, funciones almacenadas, triggers, events y todo otro objeto de base de datos creado con una sentencia CREATE.
No se usan
jamás para el contenido de las cadenas de texto.
Sintetizando tu problema: No tienes ningún error de sintaxis propiamente dicho, porque la sentencia SQL está correctamente escrita. De eso no hay dudas.
Lo que puede estar sucediendo es que las variables que usas, o alguna de ellas contengan algo que al generar la cadena de la consulta le agregue caracteres que le generen un error de sintaxis.
Eso sucedería, por ejemplo, si una variable contuviese un apóstrofe, digamos "O'Toole"
Ese apóstrofe entre la O y la T haría que la definición de la cadena se cortase, produciendo un error sintáctico que no se puede ver.
Pero esas situaciones no se corrigen con el MySQL, eso lo tienes que ver en el
Foro de PHP, que es donde conocen cómo resolver esas situaciones.
Ten en cuenta que siempre,
siempre que se usan variables pueden existir errores así.
Detalle final: En una de tus respuestas copias esta parte del mensaje de MySQL:
Cita: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near
Ese mensaje está incompleto, por favor postea TODO el mensaje, porque luego del "near" mysql suele poner la última parte interpretada por el parser, y eso a veces nos sirve de guia para saber qué está pasando.