【问题标题】:$_POST and $this->input->post() are empty$_POST 和 $this->input->post() 为空
【发布时间】:2015-01-08 00:26:40
【问题描述】:

我在传递 POST 数据时遇到问题。当我用萤火虫检查发布数据时,数据就在那里。但是当我在控制器中检查它时,什么都没有。

这是我的表格:

<form action="<?php echo base_url(); ?>cms/activiteit/saveAct" method="post">
    <div class="row">
        <div class="col-md-3">Titel:</div>
        <input class="col-md-9" type="text" name="title" id="title"/>
    </div>
    <div class="row">
        <div class="col-md-3">Datum:</div>
        <input class="col-md-9" type="date" name="date" id="date"/>
    </div>
    <div class="row">
        <div class="col-md-3">Korte beschrijving:</div>
        <input class="col-md-9" type="text" name="short" id="short"/>
    </div>
    <div class="row">
        <div class="col-md-3">Lange beschrijving:</div>
        <textarea class="col-md-9" name="long" id="long"></textarea>
    </div>
    <div class="row">
        <div class="col-md-12 spatie"></div>
    </div>
    <div class="row">
        <input type="submit" class="col-md-9 col-md-offset-3 btn btn-info" value="Opslaan"/>
    </div>
</form>

在我的控制器中我有这个:

public function saveAct()
{
        $this->output->enable_profiler();
        echo 'title: ' . $this->input->post('title');
}

我在某处读到这可能是我的 htacces 文件。

RewriteEngine on
RewriteRule ^(application) - [F,L]
RewriteCond $1 !^(index\.php|assets/|assets/bootstrap/|assets/CSS/|assets/font/|assets/font-awesome/|assets/img/|assets/javascript/|assets/JQuery/|cms/|cms/bootstrap/|cms/CSS/|cms/font-awesome/|cms/img/|cms/javascript/|cms/JQuery/|public/)
RewriteRule ^(.*)$ index.php?/$1 [L]

感谢您的帮助。

【问题讨论】:

  • 可以显示var_dump($_POST);的结果吗?
  • 什么是控制器名称也发布您的基本网址
  • 是ajax请求还是非ajax?如果是ajax,也显示js代码。
  • 你加载了 html、url 和表单助手吗?
  • -DARK_DUCK: --> array(0) { }

标签: php forms .htaccess codeigniter post


【解决方案1】:

看起来像是不正确的表单操作

尝试改变:-

<form action="<?php echo base_url(); ?>cms/activiteit/saveAct" method="post">

<?php echo form_open('activiteit/saveAct');?>

将自动获取您的站点基本网址并发布到控制器(activiteit)方法(saveAct)

更多信息:- https://ellislab.com/codeigniter/user-guide/helpers/form_helper.html

在配置中留空 Base url 或将其设置为您的 CI 目录 http://localhost/yourdir/

【讨论】:

  • as controller name AND installation directory 未提供此答案假定cmsinstallation directoryactiviteit - controller AND saveAct - method 其中 可以是这样的。 但是我可以在 OP 图片中看到title:,对此有何解释?
  • @karan 我也假设基本 url 包含目录?
  • cms 是控制器的目录
  • @rakesh sharma:我使用 可以吗?你能告诉我为什么吗?结果如下:
    perdje.be/index.php/cms/activiteit/saveAct" method="post" accept-charset="utf-8">
  • 操作 url 中可能缺少尝试检查您提供的内容或回显您的完整操作 url。如果你使用 CI 标准会更好。你也可以接受有用的答案:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-09-04
  • 1970-01-01
  • 1970-01-01
  • 2017-04-11
  • 2017-07-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多