我在尝试调用特定的控制器/方法时遇到问题。我正在尝试拨打myController/myMethod
,但我的$_POST
仅发布到myController
。我认为$_POST
无法正常工作的原因是由于以下代码:
<script type="text/javascript">
$(document).ready(function() {
var $body = $('body'),
$content = $('#content'),
$form = $content.find('#loginform');
$("input").uniform();
$form.wl_Form({
status:false,
onBeforeSubmit: function(data){
$form.wl_Form('set','sent',false);
if(data.username && data.password){
document.forms[0].submit(); // PROBLEM HERE
}else{
$.wl_Alert('Enter password','warning','#content');
}
return false;
}
});
<?php if ($error_msg != ""): ?>
$.wl_Alert('<?php echo $error_msg; ?>','info','#content');
<?php endif; ?>
});
</script>
我认为发生的事情是,当设置data.username && data.password
时,表单正在提交但未达到我需要的正确方法。
如何修改上述javascript,以便代码提交myController/myMethod
而不是提交表单[0]?这是显示我试图调用的控制器和方法的表单代码:
<form name="login" action="<?php echo site_url(); ?>myController/myMethod" id="loginform" method="POST">
答案 0 :(得分:0)
而不是
document.forms[0].submit(); // PROBLEM HERE
试着看看会发生什么
document.login.action="<?php echo site_url(); ?>myController/myMethod";
document.login.submit();
答案 1 :(得分:0)
您也可以尝试这样...........
<form action="<?php echo ROOT_FOLDER ?>/controller/function_name" method="post">
insert your elements
</form>
当你提交它时,它将转到你的控制器中的函数,你可以使用$ _POST .......
访问你在表单中提交的元素。答案 2 :(得分:0)
尝试
<form name="login" action="<?php echo base_url(); ?>myController/myMethod" id="loginform" method="POST">
如果您使用htaccess或
删除了index.php <form name="login" action="<?php echo base_url(); ?>index.php/myController/myMethod" id="loginform" method="POST">
如果你启用了index.php。
你是如何发布它发布到myController的?您是否在控制器的构造函数中放置了调试行或退出?
打印$ _POST并退出myMethod