Php 将数据从视图传递到ci中的控制器时出错

Php 将数据从视图传递到ci中的控制器时出错,php,ajax,codeigniter,Php,Ajax,Codeigniter,当我试图将视图中的值传递给CodeIgniter控制器时,我面临一个内部服务器错误:500。我试图通过ajax脚本传递它。我不知道如何通过浏览器调试和查看控制器中发生的事情。请帮帮我!。我有点累了。。如果你拿小提琴给我看,我会很高兴的 这是我的视图代码: <!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title>login</title>

当我试图将视图中的值传递给CodeIgniter控制器时,我面临一个内部服务器错误:500。我试图通过ajax脚本传递它。我不知道如何通过浏览器调试和查看控制器中发生的事情。请帮帮我!。我有点累了。。如果你拿小提琴给我看,我会很高兴的

这是我的视图代码:

<!DOCTYPE HTML>
<html lang="en-US">
<head>

<meta charset="UTF-8">
<title>login</title>
<link rel="stylesheet" href="<?php echo base_url()?>assets/login/style.css" />
<link href='http://fonts.googleapis.com/css?family=Oleo+Script' rel='stylesheet' type='text/css'>
<script type="text/javascript" src="<?php echo base_url()?>assets/login/jquery-1.7.min.js"></script>
<script type="text/javascript">
javascript:window.history.forward(1);
$(document).ready(function(){
    $("#logincheck").click(function(){
        var action = $("#lg-form").attr('action'); 
        var username = $("#username").val();
        var password = $("#password").val();
        //alert($("#username").val());
        $.ajax({
            type: "POST",
            url: action,
            data: {u_name : username,pwd : password},
            success: function(response)
            { //$('#message').html(response).fadeIn('slow');
                if(response == "success")
                    location.href = "<?php echo site_url();?>/Dashboard/index";
                else
                $("#message").html('<p class="error">ERROR: Invalid username and/or password.</p>');
            }   
        });
        return false;
    });
});
</script>
</head>
<body>

<div class="lg-container">
<h1>Admin Area</h1>

<form action="<?php echo site_url('login/login_check');?>" id="lg-form" name="lg-form" method="post">

        <div>
            <label for="username">Username:</label>
            <input type="text" name="username" id="username" placeholder="username"/>
        </div>

        <div>
            <label for="password">Password:</label>
            <input type="password" name="password" id="password" placeholder="password" />
        </div>

        <div style="text-align:center;">                
            <button type="submit" id="logincheck">Login</button>
        </div>
        </form>
    <div id="message"></div>
</div>
</body>
</html>

登录

试试这个,而不是使用

var action = $("#lg-form").attr('action');  // YOU dont need this
var username = $("#username").val();
var password = $("#password").val();
改用

var data = $("#lg-form").serialize() //should be logincheck
你有一个奇怪的命名约定。表单的ID应该更能描述表单

这与你的表格不符

$("#logincheck").click(function(){

在你的表格上写着ID是lg表格。ID也应该在表单上登录检查

我刚刚找到问题的解决方案。我在编程时犯了两个错误

  • 起初,我无法在chrome浏览器中调试。因此,为了进行调试,我通过“按F12”键进入“网络”选项卡并单击“全部”选项。其他的“XHR”对我来说就足够了

  • 在ci中的autoload.php中,我忘记添加“数据库”、“会话”帮助程序

    在我纠正了这两件事之后,当我试图将视图中的值传递给CodeIgniter控制器时,没有得到内部服务器错误:500。谢谢所有帮助我的人


  • 嘿,你有没有试过传递表单操作:index.php/login/login\u check?在使用ajax调用控制器功能时,我可以试试这个。是的,我只传递了url表单操作。我的意思是说试试表单操作index.php/login/login\u check,而不是login/login\u check,因为它在我的项目中对我有用。在这里查找日志和发布将节省很多时间不要使用md5密码不安全容易破解使用php和
    var data = $("#lg-form").serialize() //should be logincheck
    
    $("#logincheck").click(function(){