无法在codeigniter中发布简单的表单日期

时间:2012-08-31 14:13:47

标签: php html codeigniter

我确信这是一个简单的忽视,但它让我在短时间内头疼。

我试图从这个视图发布数据:

<?php
if (!$this->tank_auth->is_logged_in()) 
    {
        echo "<a href='index.php/auth/login'>Login</a>";
    } else { ?>
<form method="POST" action="create_community">
    <label>Community Name: </label><input type="text" name="communityname" value="231"/><br>
    <label>Description: </label><br><textarea name="communitydesc"></textarea><br>
    <label>Image Location(URL): </label><input type="text" name="imageloc"/><br>
    <input type="radio" name="privacy" value="public" /> public<br />
    <input type="radio" name="privacy" value="private" /> private<br />
    <input type="radio" name="privacy" value="business" /> business<br />
    <input type='submit'/>
</form>        
<?php    }
?>

创建控制器如下:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Create extends CI_Controller {

    function __construct()
    {
        parent::__construct();

        $this->load->library('tank_auth');
        $this->load->library('encrypt');
        $this->load->library('session');

        $this->load->model('topbar_model');
        $this->load->model('left_model');
        $this->load->model('right_model');
        /*
        $this->load->model('right_model');
        $this->load->model('left_model');
        $this->load->model('topic_model');
        */
        $this->load->helper('url');
        $this->load->helper('form_helper');
        $this->load->helper('form');

        $this->load->helper(array('form', 'url'));
    $this->load->library('form_validation');
        $this->load->library('security');
        $this->load->library('tank_auth');
        $this->lang->load('tank_auth');
    }

    public function index()
    {
            $this->load->view('create_community');
    }

    public function create_community()
        {
            $this->load->view('templates/head');
            echo "testing"; 
            print_r($this->input->post());
        }

}

create_community显示“测试”但不显示帖子。我也试过发布个人输入内容,但什么也没得到。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

相信$ this-&gt; input-&gt; get_post()是一个方法调用,而不是类变量,所以你不能像$ _POST []那样处理。

如果您想使用POST进行传统的表单处理,请使用标准的$ _POST [] assoc。数组,但请注意,可能会包含一个CSRF字段,并且您需要处理它。

另外,我不知道你是如何路由的,但是你的表单操作不应该是'create / create_community',除非你此时为所有的呼叫路由'create'。

答案 1 :(得分:0)

public function create_community()
{
        var_dump($this->input->post());
}