Générez un code de vérification via php, puis affichez-le avec la balise img.
Excusez-moi, s'il y a session_start(), pourquoi l'événement onclick est-il écrit ainsi, et cliquer aura pour effet de rafra?chir le code de vérification ? (Un nouveau code de vérification appara?tra)
Il n'y a pas de session et le clic n'est pas valide.
code html
<img src="verifyCode.php" onclick="this.src='verifyCode.php'"/>
php
//省略驗(yàn)證碼生成代碼...
imagepng($image);//輸出圖片
session_start();//開始會話
認(rèn)證0級講師
onclick="this.src='verifyCode.php?id='+Math_random()"/>
Cela devrait suffire. Ajoutez un nombre aléatoire à l'image, elle sera différente à chaque fois et vous pourrez la rafra?chir
Ce code est-il session_start() avant la création de l'image??
Si c'était le cas auparavant, généralement lors de la création du canevas, vous devez injecter des informations de vérification dans $_SESSION. L'injection peut échouer car la session n'est pas ouverte et la production des images de code de vérification sera terminée.
Utilisez la session pour vérifier le code de vérification graphique. Le principe général est d'abord de stocker le code de vérification actuel a dans la session, puis d'utiliser a pour générer le code de vérification graphique et le renvoyer au client. Le client saisit le code de vérification a sur le serveur, et le serveur le vérifie en fonction des données stockées dans la session en cours.
Si vous utilisez cette méthode et que la session n'est pas activée, vous ne pourrez pas stocker et remplacer le code de vérification a dans la session, et bien s?r une erreur se produira.
(Remarque : la sortie de l'image n'a rien à voir avec l'activation de la session)