правильный способ форматирования текста для вставки в базу данных с помощью php

Я пытаюсь вставить эту информацию в базу данных Mysql

$mytext = "this is a word in french d'origine francaise";

Затем код PHP sql:

$sql = "INSERT INTO tchapter (content) VALUES ('". $mytext ."')";

Это отправит мне сообщение об ошибке, потому что у меня есть символ апострофа в $mytext, на самом деле он будет смешиваться между апострофом «». $mytext .», которые существуют в $ sql.

Мой вопрос заключается в том, как правильно подготовить текст для ввода в базу данных, чтобы предотвратить любые ошибки со специальным символом.

Также я должен вернуть текст из базы данных, как это было раньше на странице html.


person franckyfranck    schedule 09.03.2015    source источник
comment
Если вы используете MySQLi или PDO и параметризованные запросы, как и должно быть, это становится не проблема.   -  person Jay Blanchard    schedule 09.03.2015
comment
Как предположил @JayBlanchard, MySQLi или PDO - лучший подход. Но mysql_real_escape_string вам поможет. php.net/manual/en/function.mysql-real- escape-строка.php   -  person Martin E.    schedule 09.03.2015
comment
Это будет addslashes($str)   -  person Félix Adriyel Gagnon-Grenier    schedule 11.03.2015


Ответы (1)


Вы можете избежать своей строки, используя следующую функцию, перед вставкой в ​​​​базу данных

mysql_real_escape_string()

person Community    schedule 09.03.2015
comment
Не рекомендуйте устаревшие функции. - person Jay Blanchard; 09.03.2015