Heim >Backend-Entwicklung >PHP-Problem >Der PHP-Bestätigungscode kann nicht angezeigt werden

Der PHP-Bestätigungscode kann nicht angezeigt werden

藏色散人
藏色散人Original
2019-09-17 10:29:363627Durchsuche

Der PHP-Bestätigungscode kann nicht angezeigt werden

PHP-Bestätigungscode wird nicht angezeigt?

Problem

Der PHP-Bestätigungscode kann nicht angezeigt werden

Heute habe ich lokal einen neuen virtuellen Host erstellt und eine kleine PHP-Website bereitgestellt, die ich zuvor geschrieben habe, weil ich die integrierte Wamp-Umgebung verwendet habe. Daher tritt diese Situation nicht auf. Jetzt stelle ich plötzlich fest, dass der Bestätigungscode nicht generiert werden kann.

Also begann ich meine Reise, um online nach vielen Lösungen zu suchen, und habe sie schließlich wie folgt gelöst:

Bug1

Wenn die obige Situation auftritt, besteht der grundlegendste Fehler darin, dass Sie möglicherweise vergessen haben, das GD-Modul in PHP zu installieren.

In der Windows-Umgebung müssen Sie nur

;extension=php_gd2.dll

in der php.ini-Datei finden und das Semikolon davor entfernen. Nach dem Neustart von Apache finden Sie dies in phpinfo()

Der PHP-Bestätigungscode kann nicht angezeigt werden

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.

bug2

Wenn Sie feststellen, dass es nach der oben genannten Installation immer noch nicht funktioniert, liegt möglicherweise das folgende Problem vor

Ihr Code It Höchstwahrscheinlich wurde es mit einem Texteditor wie Editpuls oder Notepad++ bearbeitet, daher ist ihr Standardkodierungsformat UTF-8 mit BOM.

UTF-8 BOM wird auch UTF-8-Signatur genannt. Tatsächlich hat UTF-8 BOM keine Auswirkung auf UFT-8. Es wurde hinzugefügt, um UTF-16 und UTF-32 zu unterstützen > Stückliste, Stücklistensignatur bedeutet, dem Editor mitzuteilen, welche Codierung die aktuelle Datei verwendet, um die Identifizierung des Editors zu erleichtern. Obwohl die Stückliste nicht im Editor angezeigt wird

, wird sie wie ein zusätzliches Leerzeichen ausgegeben Linie. .

Im Allgemeinen verwende ich das UTF-8-Stücklisten-freie Format

Sie müssen also das Kodierungsformat des Codes in das Stücklisten-freie Format ändern.

bug3

Wenn Sie die beiden oben genannten Schritte durchlaufen und feststellen, dass es immer noch nicht funktioniert, müssen Sie Ihre Killerwaffe verwenden.

Verwenden Sie ob_clean() und leeren Sie den Cache.

Die Funktion ob_clean wird verwendet, um den Inhalt des Ausgabepuffers zu verwerfen. Wenn Sie viele generierte Bilddateien haben, müssen Sie den Puffer häufig löschen, 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);
}

Jetzt können Sie sehen, dass es wieder normal ist

Der PHP-Bestätigungscode kann nicht angezeigt werdenHinweis: Wenn Sie eine höhere PHP-Version verwenden, können Sie sonst keine undefinierten Variablen verwenden Ein Benachrichtigungsfehler wird gemeldet. $new_number und $_SESSION['check_checks'] müssen vor der Verwendung von isset beurteilt werden. Wenn Sie alten Code verwenden, fügen Sie am Anfang error_reporting(E_ALL & ~E_NOTICE) hinzu (; nicht empfohlen) ), also verwenden Sie isset(), um zu überprüfen, ob es definiert ist. Andernfalls wird der Bestätigungscode möglicherweise nicht angezeigt.

Empfohlenes Tutorial:

PHP-Tutorial

Das obige ist der detaillierte Inhalt vonDer PHP-Bestätigungscode kann nicht angezeigt werden. 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