2013-05-28 1 views
0

젠드 양식 텍스트 필드에 특수 문자를 설정하는 방법은 무엇입니까? 문자는 데이터베이스에 & aacute;로 저장됩니다.MySQL 데이터베이스의 Zend Form에 특수 문자 설정

resources.db.params.charset = "utf8" 

테이블이 utf8_general_ci로 설정됩니다 등 내 application.ini에서이 같은 UTF와 데이터베이스 연결을 설정했습니다. 헤더에서 :

<meta http-equiv="Content-Type" content="text/html; charset=UTF=8" /> 

아래 예 :

$form->getElement('title')->setValue($Row['title']); 

I가 웹 페이지를 열은 & aacute 표시되면; 데이터베이스 에서처럼.

답변

1

이것은 실제로 문자 세트 문제가 아닙니다. ZF는 양식 필드에 표시된 데이터를 이스케이프하지만 이미 이스케이프 된 값을 양식 필드에 제공하므로 이스케이프가 두 번 발생합니다. 즉, 앰퍼샌드가 &amp;으로 변경되어 이스케이프 된 값이 표시되는 이유입니다.

나는 데이터를 이스케이프 처리하지 않고 저장하는 것이 좋습니다 (UTF-8을 사용하고 있으므로 db에 저장하면됩니다). 그렇다면이 문제는 발생하지 않을 것입니다. 또는 개별 양식 요소에서 이스케이프를 사용하지 않도록 설정할 수 있습니다.

+0

감사합니다. 나는 그것을 양식 자체에서 벗어났다. –