用户
 找回密码
 入住 CI 中国社区
搜索
查看: 3544|回复: 7
收起左侧

post数据为空

[复制链接]
发表于 2013-1-17 17:50:44 | 显示全部楼层 |阅读模式
views中:

   <?php   
           echo form_open('message/addmsg');
  ?>
         <div class="tr"><label for="name">姓名</label><input name="name" type="text" id="name" class="validate[required,minSize[6],maxSize[25]]" /></div>
         <div class="tr"><label for="content">内容</label><textarea name="content" id="content" class="validate[required,minSize[5]]"></textarea></div>

          <div class="tr"><label>&nbsp;</label>
          <?php   
                  $btn = array('type'=>'submit','class'=>'submit','content'=>'提交');
                  echo form_button($btn);
         ?>
        </div>
       <?php
                 echo form_close();
       ?>     


controllers中:
class Message extends CI_Controller{
         function __construct()
          {
                  parent::__construct();
                  $this->load->helper(array('form','url'));      
                   ......
          }

          function index()
          {
               ......
          }

          function addmsg(){
                  $data=array(
                          'name'=>$this->input->post('name'),
                          'content'=>$this->input->post('content'),
                          'posttime'=>time()
                 );

                 print_r($data);         //输出为Array ( [name] => [content] => [posttime] => 1358411611 )
                ......

        }

         ...
}

哪里有问题吗?为什么没有获取到post的数据?

发表于 2013-1-18 10:57:16 | 显示全部楼层
你整个html部分的代码加了 <form method='post'></form>  ?
 楼主| 发表于 2013-1-18 13:32:10 | 显示全部楼层
三年二班 发表于 2013-1-18 10:57
你整个html部分的代码加了   ?

不是有这个吗? form_open('message/addmsg');   form_close();  
发表于 2013-1-18 14:40:19 | 显示全部楼层
琉璃 发表于 2013-1-18 13:32
不是有这个吗? form_open('message/addmsg');   form_close();

是的!这是form_helper提供的函数。不熟者可能不知。


HTML复制代码
 
class="validate[required,minSize[6],maxSize[25]]"
 
复制代码


HTML复制代码
 
class="validate[required,minSize[5]]"
 
复制代码

是甚么?

这不像class有效的名字。

是否想用CI的Form_validation?但又见不到有加载及使用。


$this->input->post()接收不到东西,原因可以很多,但先修正HTML再看吧!
发表于 2013-1-18 14:51:00 | 显示全部楼层
琉璃 发表于 2013-1-18 13:32
不是有这个吗? form_open('message/addmsg');   form_close();

右击视图页面看看,form表单是完整的吗
发表于 2013-1-18 14:52:07 | 显示全部楼层
你视图没必要用他的表单,反而把页面复杂了,静态代码客户端,调用ci里面 的服务器加载
 楼主| 发表于 2013-1-18 15:10:38 | 显示全部楼层
燃雲 发表于 2013-1-18 14:40
是的!这是form_helper提供的函数。不熟者可能不知。


上面那两个是jquery的表单验证
发表于 2013-1-19 17:26:03 | 显示全部楼层
琉璃 发表于 2013-1-18 15:10
上面那两个是jquery的表单验证

明白!

试试print_r($_REQUEST)及print_r($_POST)。

看看是javascript吃掉你的东西,还是CodeIgniter吃的。

本版积分规则