我刚刚安装了Vtiger 7.我导入了法国潜在客户的csv文件。法语有特殊字符éèû...
当然,导入这些特殊字符不起作用。我明白了: Valérie而不是Valérie Féix而不是Félix
所以我用记事本打开我的csv文件,检查特殊字符是否正确,我保存为UTF8编码。
我再次导入并得到同样的问题。
我仔细检查输入的类型UTF8:
所以我去过vtiger_leaddetails表并在utf8_general中更改类型它没有用。我尝试使用utf_unicode,它不起作用: - (
因此,如果csv文件是UTF8,表的字段是UTF8,如果输入的类型是UTF8,这意味着Vtiger代码在某处错误?
所以我在谷歌和论坛上搜索过,而且我的问题没有答案。
有没有人可以帮我解决这个问题?
由于
答案 0 :(得分:0)
您是否尝试在导入窗口中选择ISO-8859-1?
答案 1 :(得分:0)
在导入之前,您必须将MySQL数据库和表格字符集和排序规则转换为UTF-8。
使用ALTER DATABASE和ALTER TABLE命令。
使用以下代码更改排序规则
<?php
include_once 'includes/Loader.php';
include_once 'vtlib/Vtiger/Module.php';
include_once 'includes/runtime/EntryPoint.php';
$adb = PearDatabase::getInstance();
$sql = "ALTER DATABASE " . $dbconfig['db_name'] . " CHARACTER SET utf8 COLLATE utf8_general_ci;";
$result = $adb->query($sql);
$sql = "SHOW TABLES;";
$result = $adb->query($sql);
if ($adb->num_rows($result) > 0) {
while ($row = $adb->fetch_array($result)) {
$sql = "ALTER TABLE " . $row[0] . " CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci";
$result = $adb->query($sql);
}
}