2016-07-25 1 views
-1

웹 개발자로서 독일어가 싫습니다.Charset UTF-8에 Umlaut가 표시되지 않습니다.

나는에서. 머리 속에는 처음에 다음이 있습니다 :

<meta charset="utf-8"> 

나는 또한 헤더를 확인했습니다. 다음은 설정됩니다

php.ini 파일 내 기본-캐릭터 세트에서
Content-Type:text/html; charset=UTF-8 

은 다음과 같습니다

default_charset="utf-8" 

문제는 HTML/PHP에 있기 때문에 나는 데이터베이스, PHP에서 직접 (AOU)을 움라우트 쓸 때 var_dump 할 때 올바른 문자열을 가져옵니다. 다른면에서 textarea를 채우고 양식을 보내면 POST 매개 변수의 var_dump에 Umlaut 대신 2 개의 questionmarks가 매겨집니다.

ä -> ?? 

어떻게 해결할 수 있습니까?

+0

'accept-charset = "UTF-8"'을 HTML 형식으로 설정하려 했습니까? –

+0

Jep ... 전혀 변화가 없습니다. – pestKater

+0

문제는 HTML이 아니라 데이터베이스 연결에 있다고 확신합니다. 어떻게 데이터베이스에 연결하고 연결을 설정 한 후에'SET NAMES UTF8'을 발행 했습니까? – Mjh

답변

-1

내가 절망적 이었기 때문에 양식을 보낼 때까지 Textbox-Value의 Umlaut를 대체하는 Javascript를 추가했습니다. PHP에서

$('form').submit(function(ev) { 
var textarea = $('form textarea'); 
var text = textarea.val(); 

    text = text.replace(/ä/g,"&auml;"); 
    text = text.replace(/ö/g, '&ouml;'); 
    text = text.replace(/ü/g, '&uuml;'); 
    text = text.replace(/Ä/g, '&Auml;'); 
    text = text.replace(/Ö/g, '&Ouml;'); 
    text = text.replace(/Ü/g, '&Uuml;'); 
    text = text.replace(/ß/g, '&szlig;'); 

    textarea.val(text); 
}); 

나는 데이터베이스에 데이터를 쓸의 html_entity_decode를 사용합니다.

$sql_arr = array(
     'descr'  => html_entity_decode($db->sql_escape($request->variable('description', ''))), 
     // Some more Data 
    ); 
관련 문제