1. gd 모듈을 설치합니다.
Windows 환경에서는 php.ini 파일에서 ";extension=php_gd2.dll"만 찾아서 앞에 있는 세미콜론만 제거하면 됩니다. Apache를 다시 시작하면 이 gd 정보는 phpinfo()에서 찾을 수 있습니다.
우분투 환경이라면 gd 모듈을 설치해야 합니다. 명령은
sudo apt-get install php5-gd
설치 후 위 모듈도 볼 수 있습니다.
2. 코드 파일의 인코딩을 확인하세요
BOM이 utf-8인 경우 BOM-free 형식으로 변경해야 합니다.
3. ob_clean()을 사용하고 캐시를 삭제합니다.
ob_clean 이 함수는 생성된 이미지 파일이 많은 경우 출력 버퍼의 내용을 삭제하는 데 사용됩니다. 버퍼를 자주 지워야 합니다.
public function create() { ob_clean(); $a = new verify(); session::set('captcha', strtolower($a->create(4, 15))); view::assign("captcha", $a); view::display("captcha"); exit(0); }
4. PHP 버전 문제
상위 PHP 버전을 사용하는 경우 정의되지 않은 변수를 사용할 수 없으며, 그렇지 않으면 공지 오류가 보고되며 $_SESSION['check_checks']를 사용해야 합니다. isset을 확인하거나 이전 코드를 사용하는 경우 알림 오류를 차단하려면 시작 부분에 error_reporting(E_ALL & ~E_NOTICE);
를 추가하세요(권장하지 않음).
isset()을 사용하여 정의되어 있는지 확인하세요.
해결되지 않는다면?
디버깅을 통해 글꼴 파일을 찾을 수 없어 인증코드가 표시되지 않는 것을 확인했습니다.
$font="simhei.ttf"
상대경로로 작성되어 있으며, 폰트 파일은 프로젝트에 넣어야 합니다. 또는 시스템 글꼴 파일의 절대 경로를 작성하십시오.
lib 폴더 아래에 넣었습니다:
$font=LIB_PATH."simhei.ttf"
추천 튜토리얼: PHP 튜토리얼
위 내용은 PHP에서 개발한 사진 인증 코드가 표시되지 않습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!