无法在mysql中插入少量字符

问题描述 投票:0回答:2

我在laravel中进行CSV导入,对于少数几种语言,无法导入。我得到的错误是

字符串值不正确:第1行第'product_name_german'列的'\ xFCr M \ xE4n ...'

当我打印它显示的行如下文字(带有起始字符“b”):

b"Laufschuhe für Männer Artikel 001"

我给出的实际文字是

Laufschuhe f�r M�nner Artikel 001

CSV文件是utf-8 bom编码类型

php utf-8 character-encoding laravel-5.5
2个回答
1
投票

首先要确保你在html标签中有这个元素

<meta charset="UTF-8">

你也可以在php中查看这行,在你上面提取mysql

header('Content-type: text/html; charset=utf-8');

如果你将你的特殊字符存储在数据库中作为html代码,就像这个&#39;这是'当你解压缩尝试使用这个php函数

htmlspecialchars_decode($your_text_from_db);

0
投票

我想你没有把字符集改成utf8,试试这个:希望它有助于#sayNoToWar

$statSQL= 'SET CHARACTER SET utf8'; 

mysqli_query($your_db,$sSQL) 
or die ('charset in DB didn\'t change'); 
© www.soinside.com 2019 - 2024. All rights reserved.