在我按下在index.html中创建的html表单的Submit按钮后,我们如何执行或运行python代码。
以下是index.php代码:
<!DOCTYPE html>
<head>
<title>Hello</title>
</head>
<body>
<form action="" method="POST">
<input type="text" name="nopol">
<input id="print_nopol" type="submit">
</form>
<?php
system("python /home/pi/python-epson-printer/epson_printer/testpage.py");
?>
</body>
</html>
及以下是名称为app.py的python flask应用程序脚本:
from flask import Flask, request, render_template, Response, redirect, url_for
from os import listdir
app = Flask(__name__)
@app.route('/')
def my_form():
return render_template('index.html')
@app.route('/', methods=['POST'])
def my_form_post():
input_nopol = request.form['nopol']
if request.method == 'POST':
with open('nopol.txt', 'w') as f:
f.write(str(input_nopol))
return render_template('index.html', nopol=input_nopol)
if __name__ == "__main__":
app.run(host='192.168.1.2', port=8080, debug=True)
此python代码具有将数据插入.txt文件的功能,这是python脚本路径:
/home/pi/server_print/print.py
谢谢您的帮助。
答案 0 :(得分:0)
你可以使用这个:
将此写入服务器文件:
from os import system as call
@server.route('/run_python_file', methods=['POST'])
def run_python_file():
call('python /home/pi/python-epson-printer/epson_printer/testpage.py')
return 'OK'
将其插入到 HTML 文件中:
<form action="/run_python_file" method="POST">
<input type="text" name="nopol">
<input id="print_nopol" type="submit">
</form>
<块引用>
请注意,您可以使用以下代码行访问文本框 (nopol) 的内容:
textbox = request.form['nopol']