You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CodeIgniter登录无效用户名无错误提示跳转原页面问题求助

问题解决方案

1. 修复控制器gagallogin方法的错误

gagallogin方法中对set_flashdata添加了不必要的echo输出,set_flashdata是用来写入session闪存数据的方法,不需要输出内容。提前输出会触发header提前发送,导致重定向时闪存数据无法正常写入session,错误提示也就无法带到登录页面。
修改后的代码:

function gagallogin()
{
    $url = base_url('administrator');
    // 移除set_flashdata前的echo
    $this->session->set_flashdata('msg', 'Username Atau Password Salah');
    redirect($url);
}

2. 登录视图添加错误提示渲染代码

当前登录视图没有读取展示session闪存中的msg内容,就算闪存数据设置成功用户也看不到提示。你可以在表单上方的合适位置添加如下代码,用来展示错误提示:

<?php if($this->session->flashdata('msg')): ?>
<div class="alert alert-danger">
    <?php echo $this->session->flashdata('msg'); ?>
</div>
<?php endif; ?>

可选优化

  • 你当前cekuser方法存在重复跳转逻辑:校验账号密码失败后已经触发跳转到gagallogin,方法底部的二次session判断属于冗余代码,可以删除避免逻辑混乱。
  • 现有代码用md5加密密码的方式安全性较低,推荐使用PHP原生的password_hash和password_verify方法处理密码加密校验。

内容的提问来源于stack exchange,提问作者aufa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.14 04:18:02