大家好!
所以,我有一个问题:我有一些西里尔文的数据。这是问题所在:
字符串值不正确:'\xD0\xBD\xD0\xBE\xD0\xB2...'
代表列'标题'在第1行。
这是我的代码:
$link = mysql_connect('localhost', 'root', 'pass');
if($link&&isset($_POST['addSticker'])){
$title = $_POST['title'];
$description = $_POST['description'];
$photo = mysql_real_escape_string(urlencode($_POST['photo']));
$quantity = $_POST['quantity'];
$price = $_POST['price'];
mysql_select_db('db_name');
$sql = "INSERT INTO table (title, description, photo, quantity, price) VALUES ('$title', '$description', '$photo', '$quantity', '$price');";
mysql_query("SET NAMES utf8", $link);
mysql_query($sql, $link) or die(mysql_error());
}
感谢您的帮助。
答案 0 :(得分:0)
首先,您的查询对SQL注入很容易。建议escape your characters(MySQLi)。这甚至可以解决您的问题。第二件事是你还在使用不推荐使用的mysql API。相反,您应该切换到PDO或mysqli API。如果您的排序规则错误(转义输入没有帮助),您还可以将MySQL排序规则更改为these之一,以便数据库可以理解这些字符。