Code Ingiter POST数据为空

时间:2017-06-19 16:06:36

标签: codeigniter multipartform-data

在使用codeigniter发布多部分表单时,我遇到了麻烦。表单包含文本字段和8个文件上载字段。问题是,文件上传成功没有错误,但我的控制器中的文本字段为空。

我尝试print_r POST数据并获得一个空数组。但有时当我使用谷歌浏览器时,它没有任何问题。

任何解决方案?

3 个答案:

答案 0 :(得分:0)

{
"Version": "2012-10-17",
"Statement": [
    {
        "Sid": "Stmt1234567890123",
        "Effect": "Allow",
        "Action": [
            "s3:DeleteObject",
            "s3:GetObject",
            "s3:ListBucket",
            "s3:PutObject"
        ],
        "Resource": [
            "*"
        ]
    }
 ]
}    

//假设您的表单如上所示,以检查文本字段值

<form name="form" action="some action page.php"  method="post" enctype="multipart/form-data">

 <input type="text" name="inputfieldvalue"  value="Input Field">
<input type="file" name="uploadedfile" id="uploadedfile">
<input type="submit" value="Submit" >
</form>

//将name属性传递给$ _POST [你的名字段值]。像这样

答案 1 :(得分:0)

完整的例子应该有效。

您的表单目标操作在my_form控制器中运行My_controller。以免尝试输入名称为WTF

的输入
<form name="form" action="my_controller/my_form"  method="post" enctype="multipart/form-data">

 <input type="text" name="WTF"  value="Input Field">
<input type="submit" value="Submit" >
</form>

My_controller.php文件(CI控制器文件夹)中的cotroller操作应该看起来像这个

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

class My_controller extends CI_Controller {

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

  public function index(){

    /* do something for page my_controller if you want */

  } // end of index

  function my_form() { // = my_controller/my_form
   $here_is_it = $this->input->post('WTF'); // call value of input with name WTF

   /* test it */
   print_r($here_is_it);
  }

额外,确保一切顺利。您可以在Codeigniter中启用自动加载功能。 follow this tutorial

答案 2 :(得分:0)

我只是检查一下,问题不在php或我的html表单代码中。但问题出在我的php.ini配置中。通过增加上传最大文件大小来解决问题。我之前感到很困惑,因为形式有时运作良好,有时会给出一个空值。

提前致谢