js编程实现一个以PHP为主要语言的本地网站,接收到一个来自客户端的含有name和sex的数组,在网站的数据库的数据表中寻找到含有这两个元素的列,将列中的j1,j2,j3,提取出来发送给客户端,同时也要给出客户端接收的代码,如果在数据库中未找到该信息也需要发送给客户端未发现的提示
时间: 2023-05-22 08:02:37 浏览: 52
以下是实现该功能的 js 代码:
```js
const express = require('express');
const mysql = require('mysql');
const app = express();
const port = 3000;
// 配置数据库信息
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'password',
database: 'test_db',
});
// 连接数据库
connection.connect((err) => {
if (err) {
console.error('数据库连接出错:', err);
} else {
console.log('数据库已连接');
}
});
// 处理客户端请求
app.get('/getData', (req, res) => {
const { name, sex } = req.query;
// 查询数据库中的数据
const sql = `SELECT j1, j2, j3 FROM my_table WHERE name='${name}' AND sex='${sex}'`;
connection.query(sql, (err, results) => {
if (err) {
console.error('查询数据出错:', err);
res.send('查询数据出错');
} else if (results.length === 0) {
console.log(`未找到数据: name=${name}, sex=${sex}`);
res.send('未找到数据');
} else {
console.log(`已找到数据: name=${name}, sex=${sex}`);
const { j1, j2, j3 } = results[0];
res.send(`j1=${j1}, j2=${j2}, j3=${j3}`);
}
})
})
// 启动服务器
app.listen(port, () => {
console.log(`服务器已启动,监听端口 ${port}`);
});
```
客户端代码:
```js
const btn = document.getElementById('submit');
const nameInput = document.getElementById('name');
const sexInput = document.getElementById('sex');
const resultArea = document.getElementById('result');
btn.addEventListener('click', () => {
const name = nameInput.value;
const sex = sexInput.value;
fetch(`/getData?name=${name}&sex=${sex}`)
.then(response => response.text())
.then(text => resultArea.innerHTML = text)
.catch(err => console.error('请求数据出错:', err));
})
```
如果数据库中未找到该信息,会在客户端显示"未找到数据"。