2013-08-12 13 views
2

저는 최근 PHP 4.3.9/MySQL 4.1.22 설치 프로그램을 PHP 5.3.3/MySQL 5.1.69 설치 프로그램으로 마이그레이션했습니다. 문자 인코딩에 문제가있는 것 같습니다. 데이터베이스 정렬은 latin1_swedish_ci입니다.PHP4에서 PHP5로 마이그레이션 문자 인코딩. latin1 대 utf8

PHP 스크립트를 통해 내 테이블에 새 데이터를 입력 할 때마다 데이터가 MySQL에서 깨져 버립니다. 예를 들어, à é ü는 à © ü로 끝납니다.

mysql_set_charset 또는 SET NAMES를 사용하여 문자 집합을 설정해 보았지만 어느 것도 효과가없는 것으로 보입니다. 테이블이나 코드를 utf8로 전환하고 싶지 않습니다. 현재 설정이 제대로 작동하기를 바랍니다.

이미 온라인에서 몇 시간을 보냈지 만 아직 해결책을 찾지 못했습니다.

모든 의견을 크게 환영합니다.

+0

PHP 파일의 인코딩은 무엇입니까? 그리고 어떤 mysql 라이브러리를 사용하고 있습니까? – x4rf41

+0

어떻게 확인할 수 있습니까? 그게 무슨 뜻인지 PHP-mysql-5.3.3-23을 사용하고 있습니까? –

+0

IDE에서 .php 파일의 속성을 살펴보아야합니다. 파일 인코딩을 보여 주어야하며, PHP 문자열에도 같은 인코딩이 사용됩니다. mysql_set_charset은 PHP 파일의 인코딩으로 설정되어야한다. 또한 php-mysql 라이브러리는 더 이상 사용되지 않아야합니다. (하지만 프로젝트가 오래되었고 전환하고 싶지 않습니다.) – x4rf41

답변

2

명시 활성화하여 그것을 해결 : default_charset = 'ISO-8859-1'의 php.ini 문제에 이제 해결된다.