CodeIgniter 4:表单操作引用错误404页面



我是CodeIgniter 4的新手,我想我在路由方面遇到了问题。

我已经创建了一个基本的登录&然而,当我点击提交按钮时,它会将我指向404-找不到文件页面。我无法通过查看文档和在线搜索找到它。非常感谢你的帮助。

这是我的代码:

控制器>主页.php


<?php namespace AppControllers;
class Home extends BaseController
{
public function index()
{
$data =[];
helper(['form','url']);        

echo view('header');
echo view('anasayfa');
echo view('footer');

}
public function adminlogin()
{
$data =[];
helper(['form','url']); 

echo view('login_header',$data);  
echo view('adminlogin');  
echo view('login_footer');  

}

public function register()
{

$data =[];
helper(['form','url']); 
echo view('login_header',$data);  
echo view('register');  
echo view('login_footer');  

}        

}

应用程序>配置>Routes.php


$routes->get('/', 'Home::index');
$routes->get('/adminlogin','Home::adminlogin');
$routes->get('/register','Home::register');

查看>注册


<form action="<?=base_url('/register')?>" method="post">
<div class="form-group input-rounded">
<input type="text" class="form-control" name="user_name" id="user_name"    placeholder="User Name" />
</div>
<div class="form-group input-rounded">
<input type="text" class="form-control" name="email" id="email"    placeholder="Email" />
</div>
<div class="form-group input-rounded">
<input type="password" class="form-control"  name="user_password" id="user_password"  placeholder="Password" />
</div>
<div class="form-group input-rounded">
<input type="password" class="form-control"  name="user_password_confirm" id="user_password_confirm"  placeholder="Confirm Password" />
</div>
<?php  if(isset($validation)):          ?>
<div class="col-12">
<div class="alert alert-danger" role="alert" >
<?= $validation->listErrors() ?>
</div>
</div>
<?php endif; ?>
<button type="submit" class="btn btn-primary btn-block"> Create </button>
<div class="signup-link">
<p>Do You Have an Account?</p>
<a href="adminlogin">Login</a>
</div>  

</form>

查看>管理员登录


<form action="<?=base_url('/adminlogin')?>" method="post">
<div class="form-group input-rounded">

<input type="text" class="form-control" name="user_name" id="user_name"    placeholder="User Name" />
</div>
<div class="form-group input-rounded">
<input type="password" class="form-control"  name="user_password" id="user_password"  placeholder="Password" />
</div>
<div class="form-inline">
<div class="checkbox">
<label>
<input type="checkbox" class="form-check-input" />Remember Me 
<i class="input-frame"></i>
</label>
</div>
</div>
<button type="submit" class="btn btn-primary btn-block"> Sign In </button>
<div class="signup-link">
<p>Sign Up</p>
<a href="register">Create Your Account Now</a>
</div>
</form>

顺便说一句,如果我尝试导航到localhost://mywebsite/public/adminlogin或localhost://mywebsite/public/register,它完美地工作。我想表单操作字段导致了这个问题。我试着写"/adminlogin";代替CCD_ 1和"/寄存器";代替CCD_ 2进入表单动作字段,但没有产生任何差异。也只是"/"或空白表单操作字段也不起作用。

您没有为该表单定义post路由。这就是它显示404的原因。您需要为发布请求定义一个路由。您只为get定义了路由。这就是为什么你可以从浏览器访问该页面。

$routes->post('/login','Home::login'(;$routes->post('/registerUser','Home::registerUser'(;

相关内容

  • 没有找到相关文章

最新更新