javascript - Grâce à la session, le code de vérification généré par php peut être actualisé en cliquant dessus. Pourquoi ?
PHP中文网
PHP中文网 2017-05-16 12:59:41
0
3
439

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

//省略验证码生成代码...

imagepng($image);//输出图片

session_start();//开始会话
PHP中文网
PHP中文网

认证0级讲师

répondre à tous(3)
某草草

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)

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal