app.py
@app.route('/register',methods=['GET','POST'])
def register():
if request.method == 'POST':
details = request.form
name = details['name']
username = details['username']
password = details['password']
tel = details['tel']
email = details['email']
is_member = details['member']
if is_member == 'on':
is_member = True
else:
is_member = False
cursor = mysql.connection.cursor()
query = '''INSERT INTO customers (name,username,password,tel,email,member) VALUES(%s,%s,%s,%s,%s,%s)'''
values = (name,username,password,tel,email,is_member)
cursor.execute(query,values)
mysql.connection.commit()
cursor.close()
return redirect(url_for('reg_success'))
return render_template('reg_account.html')
reg_account.html
<script>
$(doucment).ready(function(){
$("#submit_detail").click(function(){
$("#member").is(':checked',function(){
if ($(this).is(':checked')){
$(this).attr('value',"True");
} else{
$(this).attr('value',"False");
}
var is_member = $("#member").val();
})
})
})
</script>
{% block content %}
<form method="POST" class="login_details">
<h3>Registration</h3>
<!-- <legend>Log-in Details</legend> -->
<p><label for="name">Name:</label><input type="text" name="name" id="name" size="35" required></p>
<p><label for="tel">Mobile:</label><input type="text" name="tel" id="tel" size="35" required></p>
<p><label for="email">Email:</label><input type="text" name="email" id="email" size="35"></p>
<p><label for="username">Username:</label><input type="text" name="username" id="username" size="35" required></p>
<p><label for="password">Password:</label><input type="text" name="password" id="password" size="35" required></p>
<p><label for="cpw">Confirm password:</label><input type="text" name="cpw" id="cpw" size="35" required></p>
<p><label for="member">Apply as member?</label><input type="checkbox" name="member" id="member"></p>
<p><input type="submit" id="submit_detail" value="Register"></p>
</form>
{% endblock %}
错误:
werkzeug.exceptions.BadRequestKeyError: 400 Bad Request: The browser (or proxy) sent a request that this server could not understand.
KeyError: 'member'
我想让is_member
的结果在#member
中的复选框未选中时返回False,但我不明白为什么当我勾选了该复选框时,结果可以存储到数据库中?我试着调试了几次,但还是找不到一个可能的解决方案,所以有没有人可以帮忙?
查一下就行了
if 'member' in data:
# your code
else:
#your code
而不是
is_member = data['member']
这里的问题是,如果未选中,您不会从UI发送成员。因此flask无法在data dict中找到它。
问题内容: 我有一组复选框,这些复选框在选中时将值传递为1,否则将值传递为0。但是,不是将未选中的复选框的值发送为“ 0”,而是发送的值为“ NULL”。 我在下面的JS代码中应将值相应地设置为0/1,但是仍然将该值作为NULL发送。有什么方法可以确保在未选中复选框的情况下传递的值为0? 更新 这是我的html: 默认情况下,它们都被选中。 如果未选中其中之一,则MySQL报告以下错误:0SQLS
是否有任何方法可以从NamedParameterJdbcTemplate返回可选的? 我的查询有时会返回空。所以我想要漂亮的方法来检查空。我不想做尝试捕捉空结果数据访问异常,因为这个有点丑。
我现在被困在这个问题上。我想如果复选框被选中,它应该返回一个值,但是当您将public更改为int时,您会得到一个错误。它似乎只对void有效,void不会返回任何东西。有办法做到这一点吗?
问题内容: 首先,我使用的是最新版本的Oracle ApEx 4.1.1,并且具有以下具有复选框选择的标准报告,因此,在单击时,希望使用sysdate设置另一个字段,包括时间。 取消选中时,想将我之前的语句以及注释字段中设置的日期重置为NULL。 报告可能如下所示: 作为上述报告的示例,总共可能有10条记录,因此,由于用户选中了10条记录复选框中的每一个,因此我想当场将日期字段设置为sysdate
我试图创建一个表单,该表单顶部有一个复选框,当用户选中该复选框时,它会选择其他特定的复选框,但不是所有复选框。我很难通过反复试验或搜索找到答案。我唯一能找到的就是“全选”选项。不是我想要的。 理想情况下,当用户选中“管理包”旁边的复选框时,我想要“Chrome外观组”和“远程启动” 下面是代码和我在这方面的基本尝试,但它不起作用。提前谢谢。 超文本标记语言: Javascript 我不知道这个Ja
tbody和thead中的复选框使表呈现得很好。我可以在DataTable init外部编写简单的onChange函数,但它只检测表的可见页上选中或未选中的复选框。 如何或在哪里可以编写一个函数,当一个复选框被更改时会触发,然后返回表中被选中的复选框总数?