为了使用Python和Ajax实现MySQL数据库的新增数据,你需要一个后端Python脚本来处理Ajax请求并与MySQL数据库交互。以下是一个简单的示例:
首先,安装必要的Python库:
pip install flask flask-mysqldb
然后,创建一个Python脚本(假设为app.py
):
from flask import Flask, request, jsonify
import MySQLdb
app = Flask(__name__)
# MySQL 数据库连接配置
MYSQL_CONFIG = {
'host': 'localhost',
'user': 'username',
'passwd': 'password',
'db': 'database_name'
}
@app.route('/add_data', methods=['POST'])
def add_data():
data = request.get_json()
if not data:
return jsonify({'error': 'No input data provided'}), 400
# 假设你要插入的数据有两个字段:name 和 age
name = data.get('name')
age = data.get('age')
if name is None or age is None:
return jsonify({'error': 'Name and age are required'}), 400
# 连接到MySQL数据库
conn = MySQLdb.connect(**MYSQL_CONFIG)
cursor = conn.cursor()
# 执行SQL插入语句
cursor.execute("INSERT INTO your_table_name (name, age) VALUES (%s, %s)", (name, age))
# 提交事务并关闭连接
conn.commit()
conn.close()
return jsonify({'success': 'Data inserted successfully'}), 201
if __name__ == '__main__':
app.run(debug=True)
然后,你需要一个HTML页面或JavaScript代码来发送Ajax请求:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#addButton").click(function(){
var name = $("#nameInput").val();
var age = $("#ageInput").val();
$.ajax({
url: '/add_data',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({
name: name,
age: age
}),
success: function(response) {
console.log(response);
},
error: function(xhr, status, error) {
console.error(error);
}
});
});
});
</script>
<input type="text" id="nameInput" placeholder="Name">
<input type="number" id="ageInput" placeholder="Age">
<button id="addButton">Add Data</button>
确保你的Python脚本正在运行,并且在浏览器中打开包含这段JavaScript代码的页面。当你点击"Add Data"按钮时,Ajax请求会发送到Python后端,后端将数据插入到MySQL数据库中,然后返回响应。