Php 我能';t使用XAMP发送ajax请求

Php 我能';t使用XAMP发送ajax请求,php,ajax,codeigniter,xampp,Php,Ajax,Codeigniter,Xampp,我使用的是ajax登录,它在Wamp服务器windows上运行得非常好,但是当我在kali linux上传递给Xamp时,它就不起作用了: $.ajax({ url: baseurl + 'index.php?login/ajax_login', method: 'POST', dataType: 'json', data: {

我使用的是ajax登录,它在Wamp服务器windows上运行得非常好,但是当我在kali linux上传递给Xamp时,它就不起作用了:

 $.ajax({
                    url: baseurl + 'index.php?login/ajax_login',
                    method: 'POST',
                    dataType: 'json',
                    data: {
                        username: $("input#username").val(),
                        password: $("input#password").val(),
                    },
                    error: function () {

                        alert("An error occoured!");
                    },
当我点击登录按钮时,它显示:发生了一个错误! 我不知道问题出在哪里,因为这个应用程序在wampserver上运行得很好。 我希望你能帮助我。 对于框架,我使用codeIgniter

以下是表格:

 <form method="post" role="form" id="form_login">

                    <div class="form-group">

                        <div class="input-group">
                            <div class="input-group-addon">
                                <i class="entypo-user"></i>
                            </div>

                            <input type="text" class="form-control" name="username" id="username" placeholder="nom.prenom" autocomplete="off"  />
                        </div>

                    </div>

                    <div class="form-group">

                        <div class="input-group">
                            <div class="input-group-addon">
                                <i class="entypo-key"></i>
                            </div>

                            <input type="password" class="form-control" name="password" id="password" placeholder="Password" autocomplete="off" />
                        </div>

                    </div>

                    <div class="form-group">
                        <button type="submit" class="btn btn-primary btn-block btn-login">
                            <i class="entypo-login"></i>
                            Login
                        </button>
                    </div>


                </form>
它是名为login的控制器中的一个函数,这是baseurl:

$config['base_url'] = 'http://localhost/elit';

我正在使用codeIgniter框架

Ok发现HTML表单代码中缺少的一些内容:

编辑:在阅读了昆汀的评论和他提供的正确信息后,我不得不参与其中,我说:


首先,您没有在表单标记中包含操作,即操作 表示将提交或删除此表单数据的位置 不管那张表格上会发生什么,它会去哪里

正确的信息如下:

action属性是可选的。如果省略,表格将提交给 当前URL。但这是不相关的,因为表单没有 提交。JavaScript正在从中读取数据并生成HTTP 改为请求。修正我关于行动的信息 属性

谢谢昆汀提供的正确信息

我用一个新的代码编辑了表单代码和AJAX代码,但只做了一些更改,这段代码在XAMP上非常适合我:

<form action="" method="post" role="form" id="form_login" onsubmit="return UserSignIn();">
                <div class="form-group">
                    <div class="input-group">
                        <div class="input-group-addon">
                            <i class="entypo-user"></i>
                        </div>
                        <input type="text" class="form-control" name="username" id="username" placeholder="nom.prenom" autocomplete="off"  />
                    </div>
                </div>
                <div class="form-group">
                    <div class="input-group">
                        <div class="input-group-addon">
                            <i class="entypo-key"></i>
                        </div>
                        <input type="password" class="form-control" name="password" id="password" placeholder="Password" autocomplete="off" />
                    </div>
                </div>
                <div class="form-group">
                    <button type="submit" class="btn btn-primary btn-block btn-login">
                        <i class="entypo-login"></i>
                        Login
                    </button>
                </div>
            </form>

登录
AJAX代码:

<script>
    function UserSignIn()
        {
            var username = document.getElementByI('username').value;
            var password = document.getElementByI('username').value;

            if(username && password )
            {
                $.ajax({
                type: 'POST',
                url: '',
                data: {
                    username,
                    password
                },
                success: function(response) {
                    alert("Code Works");
                },
                    error: function(response){
                    console.log(response);  
                    }
                });
            }
        return false;
        }
</script>

函数UserSignIn()
{
var username=document.getElementByI('username')。值;
var password=document.getElementByI('username')。值;
如果(用户名和密码)
{
$.ajax({
键入:“POST”,
url:“”,
数据:{
用户名,
密码
},
成功:功能(响应){
警报(“代码工作”);
},
错误:函数(响应){
控制台日志(响应);
}
});
}
返回false;
}
注意:在这一部分中,
url:“
plz放置将从AJAX代码接收数据的目标页面。例如,如果php页面与此表单所在的页面位于同一文件夹中,只需键入该名称页面,例如:
url:'login.php'
,如果另一个文件夹中的login.php存在,则假定该文件夹名为login,您将执行以下操作:
url:'login/login.php'

现在,当您执行我要求您执行的操作时,请单击“提交”,如果它显示“代码工作”的警告框!!这意味着代码工作完美,您可以根据自己的需要进行编辑,但如果没有,那么我们必须查看您的php代码


希望能解决您的问题,如果您需要更多解释,请告诉我

你能给我看看html表格吗plz@Laith当然可以:)你能用
error:function(xhr,ajaxOptions,thrownError){alert(xhr.status);}替换
error:function…}
吗?
这将向我们显示即将出现的错误。如果您使用的是Chrome,请转到开发人员控制台,复制出现的任何错误并编辑您的问题。@fodilleo-我们无法区分这两种部署之间的区别。我们所能说的就是服务器找不到URL。也许你忘了上传PHP文件或其他东西。我已经做了这些更改,但不幸的是同样的问题,你应该记住,应用程序在WampServer上运行得很好,所以我认为我只需要一些配置,谢谢你;)是的,它不会工作,因为现在我必须编辑php代码太lol你介意我编辑所有的php代码吗?php代码应该采用它自己的参数,并且不会被function@fodilleo我输入了一个php代码,我将使用PDO。“首先,您没有在表单标记中包含该操作,该操作意味着该表单数据将被提交到哪里,或者在该表单上发生的任何事情,它将被提交到哪里?”-操作属性是可选的。如果省略,表单将提交到当前URL。但这并不重要,因为表单尚未提交。JavaScript从中读取数据并发出HTTP请求。“您忘记调用将获取所有表单数据的Ajax函数”-问题说“它显示:一个错误occoured!”,这是一条错误消息,您可以在JavaScript的源代码中看到。如果没有调用Ajax函数,那么就不会发生这种情况。
<script>
    function UserSignIn()
        {
            var username = document.getElementByI('username').value;
            var password = document.getElementByI('username').value;

            if(username && password )
            {
                $.ajax({
                type: 'POST',
                url: '',
                data: {
                    username,
                    password
                },
                success: function(response) {
                    alert("Code Works");
                },
                    error: function(response){
                    console.log(response);  
                    }
                });
            }
        return false;
        }
</script>