Solutions pour que le code de vérification thinkphp ne prenne pas effet : 1. Ajoutez l'instruction "ob_clean();" avant d'appeler le code de vérification ; 2. Vérifiez le fichier de configuration de votre base de données et modifiez-le correctement.
L'environnement d'exploitation de cet article : système Windows 7, version thinkphp v5.1, ordinateur Dell G3.
Comment résoudre le problème selon lequel le code de vérification thinkphp ne fonctionne pas ?
La raison et la solution pour laquelle le code de vérification ThinkPHP5 ne s'affiche pas
En fait, j'ai rencontré ce problème il y a longtemps lorsque je viens d'apprendre le framework tp5. Après l'avoir résolu, il n'y a plus eu de problème aujourd'hui. J'utilise le framework précédent pour faire un nouveau projet, j'ai de nouveau rencontré ce problème, et voici la raison du problème :
1. Ce bug existe déjà dans TP5
2. La connexion à la base de données n'est pas normale (la vérification. le code ne s'affichera pas lorsque la connexion du projet à la base de données n'est pas normale)
Solution :
1 Le propre bug de TP5, la méthode correspondante est donnée dans le forum du site officiel de TP5. code
/* * 获取验证码 * */ public function getVerify() { $config = [ 'fontSize' => 28, 'length' => 4, 'useCurve' => false, ]; ob_clean(); //每次获取验证码前都清除下缓存 $captcha = new Captcha($config); return $captcha->entry(); }Analyse : Le rôle de la fonction ob_clean :
Utilisée pour supprimer le contenu dans le tampon de sortie. Si votre site Web contient de nombreux fichiers image générés, alors si vous souhaitez y accéder correctement, vous devez vider fréquemment le tampon.
2. La connexion à la base de données est anormale. Vérifiez s'il y a un problème avec le fichier de configuration de votre base de données tp5 dababase.php
return [ // 数据库类型 'type' => 'mysql', // 服务器地址 'hostname' => '', // 数据库名 'database' => '', // 用户名 'username' => root, // 密码 'password' => '', // 端口 'hostport' => '3306', // 连接dsn 'dsn' => '', // 数据库连接参数 'params' => [], // 数据库编码默认采用utf8 'charset' => 'utf8', // 数据库表前缀 'prefix' => 'ww_', // 数据库调试模式 'debug' => true, // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器) 'deploy' => 0, // 数据库读写是否分离 主从式有效 'rw_separate' => false, // 读写分离后 主服务器数量 'master_num' => 1, // 指定从服务器序号 'slave_no' => '', // 是否严格检查字段是否存在 'fields_strict' => true, // 数据集返回类型 'resultset_type' => 'array', // 自动写入时间戳字段 'auto_timestamp' => true, // 时间字段取出后的默认时间格式 'datetime_format' => 'Y-m-d H:i:s', // 是否需要进行SQL性能分析 'sql_explain' => false, ];
Apprentissage recommandé : "
Les 10 derniers didacticiels vidéo thinkphp"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!