AJAX函数不在监听器中调用
问题描述:
函数validate()在监听器中未被调用,或者其他错误导致该错误。数据不会添加到数据库中。 index.php: 函数validate()在监听器中没有被调用,或者其他的东西导致错误。数据不会添加到数据库中。 index.php文件:AJAX函数不在监听器中调用
<!DOCTYPE html>
<html>
<head>
<title></title>
<script type="text/javascript" src = "jquery-1.11.3.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#add_button").click(function(){
validate();
});
});
function validate(){
$.post("ajax_controller.php",
{
act:"add",
subject:$("#subject").val(),
description:$("#description").val(),
price:$("#price").val(),
semester:$("#semester").val()
}
);
}
</script>
</head>
<body>
<form action="add.php" method="post" id = "login_form">
<input type="hidden" value="add" name = "act">
<input type="text" name = "subject" id = "subject">
<input type="text" name = "description" id = "description">
<input type="text" name = "price" id = "price">
<input type="text" name = "semester" id = "semester">
<input type="button" id = "add_button" value = "add">
</form>
</body>
和ajax_controller.php:加入
<?php
echo "asd";
if(isset($_POST['act'])){
if($_POST['act']=='add'){
$subject= $_POST['subject'];
$description = $_POST['description'];
$price = $_POST['price'];
$semester = $_POST['semester'];
$connection = new mysqli("localhost","root","","subjects");
$query = $connection->query("insert into subjects(id, name, desctiption, price, semester) values(NULL, \"".$subject."\", \"".$description."\", ".$price.", ".$semester.")");
}
}
?>
jQuery库。谢谢。
答
变化ajax_controller.php
<?php
if(isset($_POST['act'])){
if($_POST['act']=='add'){
$subject= $_POST['subject'];
$description = $_POST['description'];
$price = $_POST['price'];
$semester = $_POST['semester'];
$connection = mysqli("localhost","root","","subjects");
$query = mysqli_query($connection,"insert into subjects(id, name, desctiption, price, semester) values(NULL, \"".$subject."\", \"".$description."\", ".$price.", ".$semester.")");
}
}
?>
编码现在的数据添加到数据库
+0
只需简要介绍一下您所做的更改。 –
+1
为什么OP应该这样做?一个好的答案将总是解释做了什么以及为什么这样做,不仅是为了OP,而且是为了将来SO的访问者。 –
检查任何控制台错误在您的浏览器... –
@GuruprasadRao有没有。 – BekaBot
我知道这是一个陈词滥调..但消毒您的数据!从来没有,永远,永远,永远,永远不会放在你的数据库没有逃脱它......或更好..使用PDO和准备好的语句! (这是不够的) –