mySQL вставляет синтаксическую ошибку с цитатой

Я получаю следующую ошибку ниже, я считаю, что она частично содержит цитату, которую я имею в строке вставки 5'10 - (178cm) в которой передается переменная $en['height'] . Каков наилучший способ справиться с этой ошибкой?

Ошибка: у вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования около '10 – (178 см) ', m_btype =' Скорее не говорить 'в строке 12

это вставка mysql:

 m_height = '".$en['height']."', 

таблица устанавливается как:

 varchar(30) latin1_swedish_ci 

Ваша проблема в том, что вы должны «убежать» от строк, прежде чем вводить их в SQL-запросы. Не делать этого позволит людям изменить ваш запрос, введя кавычки. Пример, если я ввожу следующую строку:

 '; select * from users; -- 

Его можно выполнить SQL, которого вы не намеревались. Решение состоит в том, чтобы убежать:

 m_height = '".mysql_real_escape_string($en['height'])."', 

Или еще лучше использовать более современный метод запросов к mysql, таких как функции PDO или mysqli.

Редактировать Я также думаю, что у вас более общая синтаксическая ошибка. Попробуй это:

 m_height = "'".mysql_real_escape_string($en['height'])."'",