将 codeigniter 与 php 和 mysql 一起使用时,在此服务器上找不到请求的 URL 错误
The requested URL was not found on this server error when using codeigniter with php and mysql
我想使用 CodeIgniter、PHP 和 MySQL 制作一个简单的应用程序,它使用表单将数据收集到 MySQL 数据库中。以下是我的代码 -
对于 form1.php,我使用 -
<body>
<div class="container">
<div class="row">
<div class="col-md-4 col-md-offset-4">
<div class="login-panel panel panel-success">
<div class="panel-heading">
<h3 class="panel-title">Form</h3>
</div>
<div class="panel-body">
<form role="form" method="post" action="<?php echo base_url('/form/add_user'); ?>">
Name:<br>
<input class="form-control" placeholder="Name" type="text" name="name"><br>
Age: <br>
<input class="form-control" placeholder="Age" type="number" name="age"><br>
Gender:<br>
<input type="radio" name="gender" value="male">Male<br>
<input type="radio" name="gender" value="female">Female<br><br>
State:<br>
<select name="state">
<option value="maharashtra">Maharashtra</option>
<option value="west bengal">West Bengal</option>
<option value="kerela">Kerela</option>
<option value="bihar">Bihar</option>
</select><br>
<br>
<input class="btn btn-lg btn-success btn-block" type="submit" value="Submit" name="submit" >
</form>
</div>
</div>
</div>
</div>
</div>
</body>
对于控制器 -
class Form extends CI_Controller {
public function __construct(){
parent::__construct();
$this->load->helper('url');
$this->load->model('user_model');
}
public function index()
{
$this->load->view("form1.php");
}
public function add_user(){
$user=array(
'name'=>$this->input->post('name'),
'age'=>$this->input->post('age'),
'gender'=>$this->input->post('gender'),
'state'=>$this->input->post('state')
);
print_r($user);
$this->user_model->add_user($user);
redirect ('form');
用户模型看起来像 -
<?php
class User_model extends CI_model{
public function add_user($user){
$this->db->insert('user', $user);
}
}
?>
现在,当我在浏览器中输入 http://127.0.0.1/samplesurvey/ 时,我得到了我的表单。
我正在使用 WAMP
服务器,我的应用程序名称是 samplesurvey。
但是当我提交时,出现错误:
The requested URL /samplesurvey/form/add_user was not found on this
server.
我已经像其他答案一样编辑了 .htaccess
文件和 Apache 模块,但它不起作用。
在定义表单的操作 URL 时,最好使用 site_url
而不是 base_url
。
<form role="form" method="post" action="<?php echo site_url('form/add_user'); ?>">
错误的 .htaccess
可能是问题所在,因此暂时删除 .htaccess
文件。
确保 config.php
$config['base_url'] = 'http://127.0.0.1/samplesurvey';
$config['index_page'] = 'index.php';
它应该可以完美运行。
我想使用 CodeIgniter、PHP 和 MySQL 制作一个简单的应用程序,它使用表单将数据收集到 MySQL 数据库中。以下是我的代码 - 对于 form1.php,我使用 -
<body>
<div class="container">
<div class="row">
<div class="col-md-4 col-md-offset-4">
<div class="login-panel panel panel-success">
<div class="panel-heading">
<h3 class="panel-title">Form</h3>
</div>
<div class="panel-body">
<form role="form" method="post" action="<?php echo base_url('/form/add_user'); ?>">
Name:<br>
<input class="form-control" placeholder="Name" type="text" name="name"><br>
Age: <br>
<input class="form-control" placeholder="Age" type="number" name="age"><br>
Gender:<br>
<input type="radio" name="gender" value="male">Male<br>
<input type="radio" name="gender" value="female">Female<br><br>
State:<br>
<select name="state">
<option value="maharashtra">Maharashtra</option>
<option value="west bengal">West Bengal</option>
<option value="kerela">Kerela</option>
<option value="bihar">Bihar</option>
</select><br>
<br>
<input class="btn btn-lg btn-success btn-block" type="submit" value="Submit" name="submit" >
</form>
</div>
</div>
</div>
</div>
</div>
</body>
对于控制器 -
class Form extends CI_Controller {
public function __construct(){
parent::__construct();
$this->load->helper('url');
$this->load->model('user_model');
}
public function index()
{
$this->load->view("form1.php");
}
public function add_user(){
$user=array(
'name'=>$this->input->post('name'),
'age'=>$this->input->post('age'),
'gender'=>$this->input->post('gender'),
'state'=>$this->input->post('state')
);
print_r($user);
$this->user_model->add_user($user);
redirect ('form');
用户模型看起来像 -
<?php
class User_model extends CI_model{
public function add_user($user){
$this->db->insert('user', $user);
}
}
?>
现在,当我在浏览器中输入 http://127.0.0.1/samplesurvey/ 时,我得到了我的表单。
我正在使用 WAMP
服务器,我的应用程序名称是 samplesurvey。
但是当我提交时,出现错误:
The requested URL /samplesurvey/form/add_user was not found on this server.
我已经像其他答案一样编辑了 .htaccess
文件和 Apache 模块,但它不起作用。
在定义表单的操作 URL 时,最好使用 site_url
而不是 base_url
。
<form role="form" method="post" action="<?php echo site_url('form/add_user'); ?>">
错误的 .htaccess
可能是问题所在,因此暂时删除 .htaccess
文件。
确保 config.php
$config['base_url'] = 'http://127.0.0.1/samplesurvey';
$config['index_page'] = 'index.php';
它应该可以完美运行。