php 検証コードが表示できない問題の解決策: 1. php.ini ファイルで「;extension=php_gd2.dll」を見つけてセミコロンを削除します; 2. インストールを通じて gd モジュールをインストールしますcommand; 3. ob_clean () 関数を使用してキャッシュをクリアします。
推奨: 「PHP ビデオ チュートリアル 」
今日、ローカルに新しい仮想ホストを作成し、以前に作成した小さな PHP Web サイトをデプロイしましたが、以前は wamp 統合環境を使用していたので、この状況は発生しませんでした。ここで突然、認証コードが生成できないことに気づきました。
そこで、私はバグを見つける旅を始めました。インターネットで多くの解決策を検索し、最終的に解決しました。今、それを次のように共有します:
上記の状況が発生した場合、最終的な解決策は次のとおりです。 基本的な間違いは、おそらく php に gd モジュールをインストールするのを忘れていることです。
ウィンドウ環境では、php.ini ファイルで見つける必要があるだけです。
;extension=php_gd2.dll
その前にあるセミコロンを削除するだけです。Apache を再起動した後、これは phpinfo( )
#ubuntu 環境の場合は、gd モジュールをインストールする必要があります。コマンドはsudo apt-get install php5-gdです。インストール後、上のモジュール。 bug2上記のインストール後も動作しないことが判明した場合は、次の問題である可能性がありますあなたのコードはおそらく編集された場合のようなものを使用していますeditpuls やメモ帳などのテキスト エディタを使用する場合、デフォルトのエンコード形式は BOM 付きの utf-8 です。
UTF-8 BOM は UTF-8 署名とも呼ばれます。実際、UTF-8 BOM は UFT-8 には影響しません。UTF-16 と UTF-32 をサポートするために追加されました
BOM、BOM 署名は、編集者の識別を容易にするために現在のファイルがどのようなエンコーディングを使用しているかをエディターに伝えることを意味しますが、BOM はエディター内にあります
これは表示されませんが、追加の空白行と同様に出力が生成されます。 通常、私は UTF-8 BOM フリー形式を使用します
そのため、コードのエンコード形式を
bug3
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);
}
これで、通常の状態に戻っていることが誰にでもわかります
## 注: より新しい php バージョンを使用する場合は、未定義の変数を使用できません。そうしないと、エラーが報告されます ($new_number および $_SESSION [ 'check_checks'] 使用前に isset を使用して判断するか、古いコードを使用する場合は先頭に error_reporting(E_ALL & ~E_NOTICE) を追加して通知エラーをブロックする (非推奨) ため、isset() を使用して判断する必要があります。定義されていることを確認してください。そうしないと、認証コードが表示されない場合があります。
以上がPHP認証コードが表示されない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。