Php 字符集UTF-8不显示Umlauts
作为一个网络开发者,德语很烂 我有一个朋友。在头部,首先是:Php 字符集UTF-8不显示Umlauts,php,forms,utf-8,Php,Forms,Utf 8,作为一个网络开发者,德语很烂 我有一个朋友。在头部,首先是: <meta charset="utf-8"> 在php.ini中,我的默认字符集是: default_charset="utf-8" 问题在于HTML/PHP,因为当我直接在数据库中编写Umlauts(äöü)时,PHP会得到正确的字符串,而我会将其转储。 另一方面,当我填写textarea并发送表单时,POST参数的var_dump每次都有2个问号,而不是Umlauts ä -> ?? 如何修复它?我绝望了,
<meta charset="utf-8">
在php.ini中,我的默认字符集是:
default_charset="utf-8"
问题在于HTML/PHP,因为当我直接在数据库中编写Umlauts(äöü)时,PHP会得到正确的字符串,而我会将其转储。
另一方面,当我填写textarea并发送表单时,POST参数的var_dump每次都有2个问号,而不是Umlauts
ä -> ??
如何修复它?我绝望了,所以我添加了一些Javascript,在表单发送之前替换文本框值中的Umlauts
$('form').submit( function(ev) {
var textarea = $('form textarea');
var text = textarea.val();
text = text.replace(/ä/g,"ä");
text = text.replace(/ö/g, 'ö');
text = text.replace(/ü/g, 'ü');
text = text.replace(/Ä/g, 'Ä');
text = text.replace(/Ö/g, 'Ö');
text = text.replace(/Ü/g, 'Ü');
text = text.replace(/ß/g, 'ß');
textarea.val(text);
});
在PHP中,我使用html_entity_decode将数据写入数据库
$sql_arr = array(
'descr' => html_entity_decode($db->sql_escape($request->variable('description', ''))),
// Some more Data
);
您是否尝试过以HTML格式设置
接受charset=“UTF-8”
。。。没有任何变化。我确信问题不在HTML中,而在数据库连接中。您是如何连接到数据库的?在建立连接后,您是否发布了设置名称UTF8
?哈哈!有一天你可以试试日语-P
$sql_arr = array(
'descr' => html_entity_decode($db->sql_escape($request->variable('description', ''))),
// Some more Data
);