【发布时间】:2017-09-22 08:50:38
【问题描述】:
正如标题中所说,php 不适用于 xampp/apache,而我的所有其他文件 (html/css/js) 都运行良好。
我的 php 调用有问题,还是 php 代码本身有问题?
我的配置是 httpd.conf 和 httpd_vhosts.conf 中的路径是桌面中的一个文件夹;
我的 html 文件(使用 ajax)中的 php 调用是:
$.ajax({
url: './php/add_events.php',
data: {'title': eventData.title,'start': eventData.start.format() ,'end': eventData.end.format() ,'areHere':eventData.areHere,'finalConsult':eventData.finalConsult },
type: "POST",
success: function(json) {
alert("OK");
}
});
$.ajax({
url: './php/update_events.php',
data: {'title': $(this).data('calEvent').title,'start': $(this).data('calEvent').start ,'end': $(this).data('calEvent').end ,'areHere':$(this).data('calEvent').areHere,'finalConsult':$(this).data('calEvent').finalConsult ,'id': $(this).data('calEvent').id },
type: "POST",
success: function(json) {
alert("OK");
}
});
$.ajax({
url: './php/remove_events.php',
data: {'id':$(this).data('id')} ,
type: "POST",
success: function(json) {
alert("OK");
}
});
events: './php/events.php'
请注意,我使用的是 fullcalendar(基于 jquery),并且“remove_events.php”调用是唯一一个向我返回“OK”作为警报的调用。
如果我必须发布 php 代码,请通知我,我会编辑该帖子。
提前谢谢你!
编辑:我想明确指出这些 ajax 调用中的每一个都是 sn-ps 而不是完整代码
编辑 2:浏览器的控制台和网络选项卡中没有错误消息,它们现在都返回“OK”作为警报
编辑 3:这是 add_events.php 的 php 代码,我希望它将从 js 接收到的数据发送到我的数据库:
$title=$_POST['title'];
$start=$_POST['start'];
$end=$_POST['end'];
$areHere=$_POST['areHere'];
$finalConsult=$_POST['finalConsult'];
$typeConsult=$_POST['typeConsult'];
try {
$bdd = new PDO('mysql:host=localhost;dbname=agenda', 'root', '');
} catch(Exception $e) {
exit('Connexion failed');
}
$sql = "INSERT INTO evenement (ID_evenement,Nom_patient,Nom_groupe,Type_consultation,Heure_debut,Heure_fin,Consulte_finale,Presence,ID_client,ID_groupe,ID_observe) VALUES ('',:title, '', :typeConsult, :start, :end, :finalConsult, :areHere, '', '','')";
$q = $bdd->prepare($sql);
$q->execute(array(':title'=>$title, ':typeConsult'=>$typeConsult ':start'=>$start, ':end'=>$end, ':finalConsult'=>$finalConsult, ':areHere'=>$areHere));
?>
编辑 4:当我尝试在浏览器中打开 php 文件或从 php 回显一些信息时,它会发送类似 404 的错误
【问题讨论】:
-
如果其中一个在工作,而另一个却没有,那么要么你将其他人指向错误的位置,要么他们有错误。当您调用那些“不工作”的 URL 时,您会返回什么 HTTP 状态?我看到您的 javascript 代码没有检查错误(通过 ajax“错误”回调),因此您必须检查浏览器的控制台和/或网络选项卡以查看您得到的响应。这将为我们提供有关问题所在的线索。 “不工作”可能意味着 1000 种不同的东西。具体的错误消息会更有用。
-
好吧,他们之前可能返回了 404 - 你检查了网络标签吗?你也可以从那里得到 HTTP 错误。
-
在您的开发人员工具中与控制台相同。单击其中的“网络”选项卡。然后你可以看到页面生命周期内发生的所有请求,你可以看到浏览器向服务器发送了什么,收到了什么响应。
-
所以它现在可以工作了吗? ajax 调用返回什么状态? 200?还是别的什么?
-
200 表示脚本被调用,PHP 运行且没有错误,并发送响应
标签: php jquery ajax apache xampp