Php 我能';t使用XAMP发送ajax请求
我使用的是ajax登录,它在Wamp服务器windows上运行得非常好,但是当我在kali linux上传递给Xamp时,它就不起作用了: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({
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>