使用Ajax将值从发布到PHP页面
下面是一个包含HTML和jQuery代码的文件,每当释放输入到文本框中的一个键时,这些代码将值发布到另一个页面(Student Search Results.php)使用Ajax将值从发布到PHP页面,php,jquery,ajax,Php,Jquery,Ajax,下面是一个包含HTML和jQuery代码的文件,每当释放输入到文本框中的一个键时,这些代码将值发布到另一个页面(Student Search Results.php) <html> <head> <script src="JQuery.js"></script> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <ti
<html>
<head>
<script src="JQuery.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Team Search</title>
</head>
<body>
<form action="Student Search Results.php" method="Post">
<center>Team Name: <input type="text" name="TeamName" class="search" id="TeamName">
Teacher Sponsor: <input type="text" name="Teacher" class="search" id="Teacher"></center><hr>
</form>
<script>
$(".search").keyup(function(){
var Team_Name = $('#TeamName').val();
var Teacher = $('#Teacher').val();
var Search_Data = Team_Name + '?????' + Teacher;
$.ajax({
type: "POST",
url: "Student Search Results.php",
data: {query: Search_Data},
cache: false,
success: function(){
alert('The values were sent');
}
});
});
</script>
</body>
</html>
团队搜索
团队名称:
教师赞助人:
$(“.search”).keyup(函数(){
var Team_Name=$('#TeamName').val();
var Teacher=$('#Teacher').val();
var Search_Data=团队名称+'???'+教师;
$.ajax({
类型:“POST”,
url:“Student Search Results.php”,
数据:{query:Search_data},
cache:false,
成功:函数(){
警报(“已发送值”);
}
});
});
以下是Student Search Results.php页面:
<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
include "Connection.php";
$searchData = explode('?????', $_POST['Search_Data']);
$teamName = $searchData[0];
$teacher = $searchData[1];
$query = "SELECT club_table.Club_Name, teacher_user_table.Teacher_Name
WHERE club_table.Teacher_Email = teacher_user_table.Teacher Email,
teacher_user_table.Teacher_Name LIKE '%" . $teacher . "%',
club_table.Club_Name LIKE '%" . $teamName . "%';";
mysqli_query($con, $query);
echo $query;
?>
</body>
$\u POST['XXX']
中括号之间的名称必须是发布值时使用的名称,在您的案例中是查询
因此,您可以:
将帖子数据
中的值名称从查询
更改为搜索数据
:
...
data: {Search_Data: Search_Data},
...
或更改PHP中的索引名称:
$searchData = explode('?????', $_POST['query']);
我只是吹毛求疵,请确保您正在清理传递给查询的变量,最好是准备好的语句。如果您将SQL注入攻击推送到任何类型的生产服务器上,它将有助于防止SQL注入攻击。