오늘 나는 매우 마법의 문제를 겪었습니다. 사용자는이 웹 사이트의 양식이 쿼리 시스템에 제출 된 후 반환 값을 얻을 수 없다고 말했습니다. 쿼리 결과는 0 레코드이지만 로컬 순수한 HTML 실행에 의해 값을 검색 할 수 있습니다. 나는 그것을 직접 확인했고 이것이 사실이라는 것이 밝혀졌습니다. 또한, 제출 된 매개 변수를 필드의 다른 값을 제외하고는 양쪽에 들어가는 것을 비교하면 매개 변수 수는 동일하므로 인코딩 문제의 영향 일 수 있다고 생각할 수 있습니다.
두 파일을 개별적으로 열린 후 양쪽의 인코딩이 실제로 일치하지 않으며 서버는 GB2312임을 알았습니다. UTF-8 인코딩을 전달하는 매개 변수는 과거에 정상적으로 구문 분석 할 수 없었으므로 개를 검색하고 양식에서 거의 사용되지 않는 속성을 찾도록했습니다.
코드 사본은 다음과 같습니다.
accept-charset =”gb2312 ″
이 속성은 매우 흥미 롭습니다. 컨텐츠를 인코딩하기 위해 양식을 설정할 수 있으므로이 속성을 추가 할 만하십시오.
그러나 그것은 매우 역겨운 일입니다. 즉,이 속성을 지원하지 않으므로 양식의 onsubmit () 메소드를 해킹하고 추가해야했습니다.
코드 사본은 다음과 같습니다.
onsubmit =”document.charset = 'gb2312'; "
문제는 완전히 해결되었습니다.