#javascript #python #mysql #sql
Вопрос:
Поэтому моей целью было передать переменные, полученные с HTML-страницы, в файл python, а затем вызвать файл python на этапе и заставить его вставить информацию в базу данных SQL. Python следует запускать только в том случае, если определенная функция javascript завершается успешно. Однако, похоже, даже зная, что файл python запущен в разделе сети, он ничего не делает, несмотря на наличие инструкций печати в разных точках кода. Язык JavaScript:
if (otp.length == 6 amp;amp; otp != null) {
$.ajax({
url : 'controller.php',
type : 'POST',
dataType : "json",
data : input,
success : function(response) {
$("." response.type).html(response.message)
$("." response.type).show();
console.log(response);
$.ajax({
type: "POST",
url: "python.py",
data: { response},
dataType : "json",
}).done(function( response ) {
console.log('--response--', response)
// do something
});
},
error : function(data) {
console.log(data)
alert("Error encountered. Please try again later.");
}
});
}
Код на Python
print("Felicitations. La code marche")
import MySQLdb
from flask import Flask,render_template,request
app=Flask(__name__)
@app.route('/')
def index():
return render_template('add.html')
@app.route('/',methods=['POST'])
def getvalue():
Gender=request.form['Gender']
return Gender
print(getvalue.Gender)
db=MySQLdb.connect("localhost", "name", "password", "fintech")
insertrec = db.cursor()
sqlquery= "INSERT INTO customers(Gender) VALUES('Gender')"
insertrec.execute(sqlquery)
db.commit()
print("Felicitations. La code marche")
db.close()
Это то, что отображается в консоли/сети:
Эта информация напечатана не python, а скорее другим php-кодом, поэтому она не имеет значения
Сеть показывает, что файл python действительно запущен, но на самом деле это не так
Комментарии:
1. A
return
завершает функцию. Ничто ниже этого не выполняется.2. @КлаусД. вы имеете в виду возвращаемый пол? В таком случае, почему не выполняется/не печатается самая первая строка кода python?
3. Они находятся на уровне модуля и должны быть распечатаны при запуске сервера.
4. @КлаусД. но оператор печати в первой строке находится не на уровне модуля. Также «должно быть напечатано», но это не так. Вот почему я в замешательстве.
5. Похоже, у вас есть недопонимание относительно того, как запускать приложение Flask. Если должен быть запущен сервером WSGI. Есть простой, встроенный в колбу. Вы не можете просто запустить файл как CGI-скрипт.