|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
主代码如下:
from flask import Flask, render_template,request
app = Flask(__name__)
@app.route("/register")
def register():
return render_template('info.html')
@app.route("/post_register",methods=['post'])
def post_register():
print(request.form)
return"注册成功"
if __name__ == "__main__":
app.run()
html文件如下:
<head>
</head>
<body>
<h1>欢迎登陆</h1>
<form method="post" action="/post_register">
<div>
用户名:<input type="text",name='user'/>
密码:<input type="password",name="pwd"/>
性别:<input type="radio" name="gender",value='1'/>男 <input type="radio" name="gender",value='2'/>女
</div>
<input type="submit" value="提交" />
</form>
</body>
终端显示:ImmutableMultiDict([('gender', 'on')])
发现主文件接收的文件不能接收到name和password,而且gender的接受值也不太一样,请问那里出了问题呢?请大佬们指教一下
问题出在HTML文件的输入标签中,您的输入标签的属性之间使用了逗号,而不是空格。
正确的做法应该是用空格隔开属性。此外,input 标签应该是自闭合的,也就是在标签的末尾添加一个斜杠(/)。
将您的HTML文件修改为以下内容:
<head>
</head>
<body>
<h1>欢迎登陆</h1>
<form method="post" action="/post_register">
<div>
用户名:<input type="text" name='user'/>
密码:<input type="password" name="pwd"/>
性别:<input type="radio" name="gender" value='1'/>男 <input type="radio" name="gender" value='2'/>女
</div>
<input type="submit" value="提交" />
</form>
</body>
这样修改后,您的终端应该能正确显示用户提交的表单信息。例如,如果用户提交了用户名为"user1",密码为"password1",性别为"1"(男),您的终端将显示:
ImmutableMultiDict([('user', 'user1'), ('pwd', 'password1'), ('gender', '1')])
|
|