帮我写一个PHP和mysql数据库前后端分离可以直接运行使用的查询系统
时间: 2024-03-24 10:39:43 浏览: 14
好的,下面是一个简单的PHP和MySQL数据库的前后端分离查询系统:
前端页面 index.html:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>查询系统</title>
</head>
<body>
<h1>查询系统</h1>
<form>
<label for="query">输入查询语句:</label>
<input type="text" id="query" name="query" placeholder="SELECT * FROM users">
<button type="submit">查询</button>
</form>
<p id="result"></p>
<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
<script src="query.js"></script>
</body>
</html>
```
前端 JavaScript 文件 query.js:
```js
const form = document.querySelector('form');
const result = document.querySelector('#result');
form.addEventListener('submit', (event) => {
event.preventDefault();
const query = document.querySelector('#query').value;
axios.get(`query.php?query=${query}`)
.then(response => {
result.innerHTML = JSON.stringify(response.data, null, 2);
})
.catch(error => {
result.innerHTML = error.message;
});
});
```
后端 PHP 文件 query.php:
```php
<?php
header('Content-Type: application/json');
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "database_name";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
$query = $_GET['query'];
// 执行查询语句
$result = $conn->query($query);
if ($result === false) {
echo json_encode(['error' => $conn->error]);
} else {
$rows = [];
while ($row = $result->fetch_assoc()) {
$rows[] = $row;
}
echo json_encode($rows);
}
$conn->close();
```
注意:这只是一个简单的示例代码,实际情况中需要根据具体需求进行修改和完善。同时,为了保证安全性,需要对用户输入的查询语句进行过滤和验证。