Javascript 如何将数组从控制器angularjs发送到codeigniter控制器?
你好,我是angular js和codeigniter的新手 所以我在将对象从angularjs服务发送到codeigniter控制器时遇到了问题 这是我的密码 angular(service.js): codeigniter(pages.php): 我得到一个错误“不允许的关键字符。$$hashKey” 那么我的代码错了吗?或者有更好的方法来解决这个问题 解决====================================== 所以如果你和我有同样的问题,去你的文件夹 system/core/input.php 和查找函数_clean_input_key($str),函数块应如下所示:Javascript 如何将数组从控制器angularjs发送到codeigniter控制器?,javascript,php,codeigniter,angularjs,Javascript,Php,Codeigniter,Angularjs,你好,我是angular js和codeigniter的新手 所以我在将对象从angularjs服务发送到codeigniter控制器时遇到了问题 这是我的密码 angular(service.js): codeigniter(pages.php): 我得到一个错误“不允许的关键字符。$$hashKey” 那么我的代码错了吗?或者有更好的方法来解决这个问题 解决====================================== 所以如果你和我有同样的问题,去你的文件夹 system/c
function _clean_input_keys($str)
{
if ( ! preg_match("/^[a-z0-9:_\/-]+$/i", $str))
{
exit('Disallowed Key Characters.');
}
// Clean UTF-8 if supported
if (UTF8_ENABLED === TRUE)
{
$str = $this->uni->clean_string($str);
}
return $str;
}
因此,您可以看到包含正则表达式的preg_match。
可以将异常添加到该正则表达式中。
或者,如果您不知道该怎么做,只需阻塞该代码并仅返回$str。我知道这已经很旧了,但要删除帖子中的$$hashKey,请使用angular.copy()将其删除。因此:
data: $.param({
"product" : angular.copy(products)
})
嗯。。。仍然不起作用。如果我尝试使用数据,并使用chrome调试javascript。在“网络”选项卡中,我可以看到我的数据通过网络发送。但我不明白为什么当我尝试从codeigniter访问它时,它总是空的。是否有任何关键的帖子数据中有一个点?不,它就像这个{“产品”:[{“id”:“1”,“产品名称”:“apple”,“价格”:“11”,“折扣价格”:“1”}}。还要检查codeignitorHello中的这个文件
system/libraries/Input.php
,它仍然不工作,但我会再做一些研究。无论如何,谢谢你的推荐。
function _clean_input_keys($str)
{
if ( ! preg_match("/^[a-z0-9:_\/-]+$/i", $str))
{
exit('Disallowed Key Characters.');
}
// Clean UTF-8 if supported
if (UTF8_ENABLED === TRUE)
{
$str = $this->uni->clean_string($str);
}
return $str;
}
data: $.param({
"product" : angular.copy(products)
})