Трябва да избягвате низовете, които изпращате във вашите SQL заявки.
За това можете да използвате mysql_real_escape_string
функция.
Например кодът ви може да изглежда така (не е тестван, но нещо подобно трябва да свърши работа) :
$str = "abcd'efh";
$sql_query = "insert into my_table (my_field) values ('"
. mysql_real_escape_string($str)
. "')";
$result = mysql_query($sql_query);
Друго решение (ще изисква повече работа, тъй като ще трябва да промените повече код) би било да се използват подготвени изявления; или с mysqli_*
или PDO
-- но не е възможно със стария mysql_*
разширение.
Редактиране : ако това не работи, можете ли да редактирате въпроса си, за да ни дадете повече информация? Харесва ли ви частта от кода, която причинява грешката?