我有以下表單供用戶重置密碼,它位於根目錄下的文件forgotten.php中。Ajax Post Type不會將數據發送到php頁面
<form id="pass_form" action="" method="post" name="pass_form">
<label>Username:</label>
<input type="text" class="blank" name="name" id="name" value="Trader Username" data-default="Trader Username" data-message="Please enter your username..."> *<br>
<input class="sub-btn" type="submit" value="Submit">
</form>
我想後的用戶名在JS來INC/sendreset.php所以我有以下的Ajax/scripts.js中
$("#pass_form").validator({
offset: [0, 354],
position: 'center left',
messageClass: 'conerror'
}).submit(function(e) {
if (!e.isDefaultPrevented()) {
var form = $(this);
var serdata = form.serialize();
$.ajax({
type: "POST",
url: "sendreset",
data: serdata,
cache: false,
success: function (html) {
log('inside ajax sendreset', this, arguments);
$('#pass_form').fadeOut(400,function(){
if (html=="0") {
} else {
$('#pass_form').html('<p>The password reset instructions have been sent. Please check your email.</p>');
}
$('#pass_form').fadeIn();
});
},
error: function (err) {
log('error inside ajax sendreset', this, arguments);
}
});
//$('#pass_form').fadeOut(400);
e.preventDefault();
}
});
但是它似乎並沒有張貼的用戶名進入文件。該INC/sendreset.php如下
<?php
require_once('./library.php');
require_once('./PHPMailer/class.phpmailer.php');
$Trader = new CompanyTrader();
$resetdata = $Trader->resetTrader($_POST['name']);
print_arr($resetdata);
//more php which isn't relevant
?>
我知道文件INC/sendreset.php工作,當我要使用的文件$ _GET [「名稱」]我用INC/sendreset.php?名= username爲相關用戶返回數組。儘管如此,它並不能從forgetten.php中使用Ajax。請幫忙!
的相對或絕對URL你爲什麼把URL = 「sendreset」,而不是爲 「INC/sendreset.php」? – sdespont