Php 在插入期间和字符串包含特殊字符时截断MySQL中的字符串'á';
为什么字符串在试图插入MySQL表时会截断?字符串在字符Php 在插入期间和字符串包含特殊字符时截断MySQL中的字符串'á';,php,mysql,sql,mysqli,special-characters,Php,Mysql,Sql,Mysqli,Special Characters,为什么字符串在试图插入MySQL表时会截断?字符串在字符前面截断。例如,Málaga-皇家马德里成为数据库中唯一的M //*** login & select database //*** $mysqli->query('set names utf8'); $title = $mysqli->real_escape_string('Málaga - Real Madrid'); $mysqli->query("INSERT INTO article (title) VA
前面截断。例如,Málaga-皇家马德里
成为数据库中唯一的M
//***
login & select database
//***
$mysqli->query('set names utf8');
$title = $mysqli->real_escape_string('Málaga - Real Madrid');
$mysqli->query("INSERT INTO article (title) VALUES ('$title')");
可以使用PHP在字符集上拆分字符串
<?php
// Put the data in to a string
$string = 'Málaga - Real Madrid';
// Split it by the character
$split_string = explode('á', $string);
//***
login & select database
***/
$mysqli->query('set names utf8');
// Put the first split in to the real_escape function
$title = $mysqli->real_escape_string($split_string[0]);
// Run the query
$mysqli->query("INSERT INTO article (title) VALUES ('$title')");
?>
你确定á
是utf-8吗?你确定title字段的字符集也是utf-8吗?不,我不确定。我正在从另一个网站获取数据。我想虽然它不是UTF-8。我可以把它转换成UTF-8吗?好的,我们找到了php函数mb_convert_编码