大家好,我是ajax的新手,我有一个问题,我想调用一个php文件从javascript文件做一些数据库查询。 JS代码
$(document).ready(function(){
$(".delete").click(function(){
var xhttp;
if(window.XMLHttpRequest)
xhttp = new XMLHttpRequest();
else
xhttp = new ActiveXObject("Microsoft.XMLHTTP");
xhttp.onreadystatechange = function() {
if(xhttp.readyState==4 && xhttp.status==200){
$(".delete").css("color", "pink");
}
};
xhttp.open("POST","../admin-tasks/admin-delete-appointment.php",true);
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhttp.send("date="+date+ "&hour="+time);
});
});
和php文件。
<?php
session_start();
require_once("../connection.php");
if($_SESSION["password"]!=null)
{
if(!empty($_POST["date"]) && !empty($_POST["hour"])){
$_SESSION["msg"]= "<script type='text/javascript'> alert('The appointment has been removed!');</script>";
$date=$_POST["date"];
$hour=$_POST["hour"];
...
我想指出请求正常,如果我通过html表单发送数据,那么php文件正在运行,问题是当我通过js文件尝试它时。状态为200,readyState最终为4。当我从js ??
调用它时,这是否正确$_POST["date"]
$_POST["hour"]
答案 0 :(得分:0)
您是否尝试添加一些括号?
if(xhttp.readyState==4 && xhttp.status==200) {
$(".delete").css("color", "pink");
xhttp.open("POST","../admin-tasks/admin-delete-appointment.php",true);
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhttp.send("date="+date+ "&hour="+time);
}
答案 1 :(得分:0)
代码是完全正确的,我在方法日期发现了错误。如果我给出日期(“Y-m-d”,strtotime($ date))和var $ date而不是 - has /或w / e它不会将日期更改为您期望的格式。