【发布时间】:2017-04-06 15:35:40
【问题描述】:
Ajax 调用无法在整个站点中运行。但在localhost 中工作正常。我无法调试此问题。
我整个网站都用过ajax。我完全受够了。
任何人请帮我修复这个错误!
我的一个示例 Ajax 代码:
function advanced_addTopic(cid) {
$.ajax({
url: "assets/php/checkSubtopicStatus.php", // Url to which the request is send
type: "POST", // Type of request to be send, called as method
data: {'cid':cid}, // Data sent to server, a set of key/value pairs (i.e. form fields
success: function(data) // A function to be called if request succeeds
{
if(data==="True"){
$("#subtopicDiv").html($("#subtopicDiv"+cid).html());
$("#advanced_testid").val(cid);
var hiddenCourse=$("#createTest").attr('class');
$("#courseHidden").val(hiddenCourse);
$("#advanced_addquestionModal").modal('show');
$("#subtopic").focus();
$("#question").focus();
var tempVal=$("#getID").text();
$("#advanced_courseHidden").val(cid);
} else {
alert("Create subtopics to insert questions!");
}
}
});
我的 PHP 代码在这里:
<?php
class loginValidation {
function validate()
{
ob_start();
session_start();
include "../../connection.php";
$id=$_POST['cid'];
$query = mysql_query("select * from advanced_subtopic where testid='$id'");
if(mysql_num_rows($query)>0) {
echo "True";
}
else {
echo "False";
}
}
}
$loginValidation=new loginValidation;
$loginValidation->validate();?>
【问题讨论】:
-
检查控制台是否有错误并让我们也知道错误
-
1. 不要使用已弃用的
mysql_*-functions。它们自 PHP 5.5 起已弃用,并在 PHP 7 中完全删除。改用 MySQLi 或 PDO。 2. 您对SQL Injections 持开放态度,应该真正使用Prepared Statements 而不是连接您的查询,如果您使用上述MySQLi 或PDO,则可以使用。特别是因为您甚至根本没有转义用户输入。 -
它返回 -False @MayankPandeyz
-
试试 jQuery 是否正常工作..
-
请求是从浏览器发出的吗?您在本地主机和服务器上是否有相同的网络服务器和设置?请求是否在服务器上的访问日志中?您是否在服务器的错误日志中得到任何信息?你在服务器上有相同的 php 版本和包吗?也许您有 PHP7,其中删除了“mysql_”函数?