php activerecord保存在codeigniter中不起作用

php activerecord保存在codeigniter中不起作用,php,codeigniter,activerecord,save,Php,Codeigniter,Activerecord,Save,我使用最新的代码igniter 2.0.3和php active 0.0.1 除了保存外,所有的工作都很好 代码: 我的问题是:由于某种原因,我无法理解上面的代码不起作用,但是如果我从if$\u POST中取出代码,它就可以正常工作 我做错了什么 编辑: 感谢Damien Pirsy$this->input->post完成了这项工作,但是当我取消注释代码中的注释时,问题又出现了 现在的代码是: 元素新ID$element->routeid-=1;是正确的,但我遇到了与开始时相同的问题,两次保存都

我使用最新的代码igniter 2.0.3和php active 0.0.1

除了保存外,所有的工作都很好

代码:

我的问题是:由于某种原因,我无法理解上面的代码不起作用,但是如果我从if$\u POST中取出代码,它就可以正常工作

我做错了什么

编辑:

感谢Damien Pirsy$this->input->post完成了这项工作,但是当我取消注释代码中的注释时,问题又出现了

现在的代码是:


元素新ID$element->routeid-=1;是正确的,但我遇到了与开始时相同的问题,两次保存都不起作用。

您没有提供太多详细信息或调试信息,因此我猜:尝试改用CI的本机post处理程序。您应该让var_转储$_POST数组,看看是否设置了isset,因为您使用它作为条件

if($this->input->post())
{
  //...
}
更新:

因为我们讨论的是Post变量,所以不要假设它们完全符合您的需要。请记住,$this->input->post'field在索引不存在时返回FALSE;这很可能会使你的病情恶化。 假设你需要数字来做这件事,你可以做如下检查

if($this->input->post('newRoute') AND is_numeric($this->input->post('newRoute'))
{
  $newRoute = $this->input->post('newRoute');
}
else
{
  // give it a default value, or raise an error, for example. If you need this
  // variables, and need them to be numbers, you cannot go on in case these 
  // conditions are not met, right?
}
$oldRoute也一样。
是的,好吧,也许你可以写一个比我更干净的代码,但你明白了

你以前可以这么说……请更详细一些,这样人们可以更好地帮助你!$\u帖子肯定不是空的。。。我添加了echo后,它是回声…对不起,我认为这是显而易见的,但给我一分钟,这->输入->张贴似乎工作以上代码编辑部分,我已经张贴保存工作正常,但行更新条目必须放在后面的for。。。
if($this->input->post())
{
  //...
}
if($this->input->post('newRoute') AND is_numeric($this->input->post('newRoute'))
{
  $newRoute = $this->input->post('newRoute');
}
else
{
  // give it a default value, or raise an error, for example. If you need this
  // variables, and need them to be numbers, you cannot go on in case these 
  // conditions are not met, right?
}