Я tring, чтобы вставить в мою базу данных следующую строку: «è», но каждый раз, когда я пытаюсь в базе данных, ничего не добавляется. Это код, который я использую для вставки.Вставьте специальные символы в DB
$string = mysql_real_escape_string($_REQUEST['string_passed']);
$query = "UPDATE my_table SET my_field = '$string' WHERE id = '$id'";
В моем файле connection.inc.php у меня есть следующий код.
mysql_connect("localhost", "root", "") or die("Problem: ".mysql_error());
mysql_select_db("my_db") or die("Poblem: ".mysql_error());
mysql_query('SET NAMES utf8');
Я знаю, я могу вставить $string
с помощью htmlentities
, но есть какие-либо другие решения?
Также не используйте расширение базы данных 'mysql_'. Его устарели годами и полностью исчезнут в PHP7. Вместо этого изучите ['mysqli' или' PDO'] (http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php) – RiggsFolly
[Ваш скрипт подвержен риску SQL-инъекции Атаки.] (Http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php) Узнайте о [подготовленном] (http://en.wikipedia.org/wiki/Prepared_statement) для [PDO] (http://php.net/manual/en/pdo.prepared-statements.php) и [MySQLi] (http://php.net/manual/en/mysqli.quickstart. prepare-statements.php) и подумайте об использовании PDO, [это действительно не сложно] (http://jayblanchard.net/demystifying_php_pdo.html). –
Вы создаете запрос, но не показываете, как вы его выполняете. Пожалуйста, укажите соответствующий код. – Alfabravo