Heim  >  Artikel  >  Backend-Entwicklung  >  Der von PHP entwickelte Bildverifizierungscode wird nicht angezeigt

Der von PHP entwickelte Bildverifizierungscode wird nicht angezeigt

王林
王林Original
2019-11-18 09:22:142025Durchsuche

Der von PHP entwickelte Bildverifizierungscode wird nicht angezeigt

1. Installieren Sie das GD-Modul

In der Windows-Umgebung müssen Sie nur „;extension=php_gd2.dll“ finden php.ini-Datei. Entfernen Sie einfach das Semikolon davor. Nach dem Neustart von Apache finden Sie die GD-Informationen in phpinfo().

Wenn Sie sich in einer Ubuntu-Umgebung befinden, müssen Sie das GD-Modul installieren. Der Befehl lautet

sudo apt-get install php5-gd

Nach der Installation können Sie auch das obige Modul sehen.

2. Bestätigen Sie die Kodierung der Codedatei

Wenn es sich um UTF-8 mit BOM handelt, muss es in ein BOM-freies Format geändert werden .

3. Verwenden Sie ob_clean() und leeren Sie den Cache

Die Funktion von ob_clean besteht darin, den Ausgabepuffer zu verwerfen Sie viele generierte Bilddateien haben, müssen Sie den Puffer regelmäßig leeren, wenn Sie korrekt darauf zugreifen möchten.

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-Versionsproblem

Wenn Sie eine höhere PHP-Version verwenden, können Sie keine undefinierten Variablen verwenden, andernfalls wird ein Hinweisfehler gemeldet, $ New_number und $_SESSION['check_checks'] müssen vor der Verwendung mit isset beurteilt werden. Wenn Sie alten Code verwenden, fügen Sie am Anfang error_reporting(E_ALL & ~E_NOTICE); hinzu, um Benachrichtigungsfehler zu blockieren (nicht empfohlen), also verwenden Sie isset() zur Beurteilung . um sicherzustellen, dass es definiert ist.

Was ist, wenn das Problem nicht gelöst wird?

Beim Debuggen habe ich festgestellt, dass der Bestätigungscode nicht angezeigt wurde, weil die Schriftartdatei nicht gefunden werden konnte.

$font="simhei.ttf"

schreibt einen relativen Pfad und die Schriftartdatei muss im Projekt platziert werden. Oder schreiben Sie den absoluten Pfad zur Systemschriftartdatei.

Ich habe es im lib-Ordner abgelegt:

$font=LIB_PATH."simhei.ttf"

Empfohlenes Tutorial:

PHP-Tutorial

Das obige ist der detaillierte Inhalt vonDer von PHP entwickelte Bildverifizierungscode wird nicht angezeigt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn