js编程实现一个以PHP为主要语言的本地网站,接收到一个来自客户端的含有name和sex的数组,在网站的数据库的数据表中寻找到含有这两个元素的列,将列中的j1,j2,j3,提取出来发送给客户端,同时也要给出客户端接收的代码,如果在数据库中未找到该信息也需要发送给客户端未发现的提示,要求一定给出客户端发送和接收的代码,客户端是基于js,网站的接口是基于php,重点就是客户端和网站之间的接受数据问题
时间: 2023-05-22 21:03:40 浏览: 90
以下是实现此功能的一个可能的代码示例,供参考:
PHP 端代码:
```
<?php
// 连接数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "dbname";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("连接数据库失败: " . $conn->connect_error);
}
// 接收客户端 POST 过来的数据
$name = $_POST["name"];
$sex = $_POST["sex"];
// 在数据表中查找是否有符合条件的记录
$sql = "SELECT j1, j2, j3 FROM table_name WHERE name='$name' AND sex='$sex';";
$result = $conn->query($sql);
// 发送数据给客户端
if ($result->num_rows > 0) {
$row = $result->fetch_assoc();
$data = array("j1" => $row["j1"], "j2" => $row["j2"], "j3" => $row["j3"]);
header('Content-Type: application/json');
echo json_encode($data);
} else {
header('Content-Type: application/json');
echo json_encode(array("error" => "未找到符合条件的记录"));
}
// 关闭数据库连接
$conn->close();
?>
```
客户端代码:
```
<script>
// 准备发送给服务器端的数据
var data = {name: "John", sex: "male"};
// 发送 POST 请求到服务器端
var xhr = new XMLHttpRequest();
xhr.open("POST", "http://example.com/path/to/php_file.php", true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function() {
if (this.readyState === XMLHttpRequest.DONE && this.status === 200) {
// 处理从服务器端返回的数据
var response = JSON.parse(this.responseText);
if (response.error) {
// 显示未找到记录的提示
alert(response.error);
} else {
// 显示从数据库中提取的数据
alert("j1: " + response.j1 + "; j2: " + response.j2 + "; j3: " + response.j3);
}
}
};
xhr.send("name=" + data.name + "&sex=" + data.sex);
</script>
```
阅读全文