Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
html表单-为什么我经常看到<;输入名称=";“下一步”/>;?澄清';名称';属性确实存在_Html_Django_Forms - Fatal编程技术网

html表单-为什么我经常看到<;输入名称=";“下一步”/>;?澄清';名称';属性确实存在

html表单-为什么我经常看到<;输入名称=";“下一步”/>;?澄清';名称';属性确实存在,html,django,forms,Html,Django,Forms,我总是对html表单中的“name”属性的作用感到困惑。从我读过的教科书(html和css,John Duckett设计和构建网页),这是关于“name”属性的说法 When users enter information into a form, the server needs to know which form control each piece of data was entered into. (For example, in a login form, the serv

我总是对html表单中的“name”属性的作用感到困惑。从我读过的教科书(html和css,John Duckett设计和构建网页),这是关于“name”属性的说法

When users enter information 
into a form, the server needs to 
know which form control each 
piece of data was entered into. 
(For example, in a login form, the 
server needs to know what has 
been entered as the username 
and what has been given as the 
password.) Therefore, each form 
control requires a name attribute. 
The value of this attribute 
identifies the form control and is 
sent along with the information 
they enter to the server.
通过阅读本文,我一直认为,比如在数据库中有一个名为“theUsersPasswordField”的字段和一个名为“theUsersUsernameField”的字段。我想,假设有一张登记表,那么表格会是这样的:

<form action="aURL" method="post">
    <p>Please enter what you want your Username to be:</p>
    <input type="submit" name="theUsersUsernameField" />
    <p>Please enter what you want your Password to be:</p>
    <input type="password" name="theUsersPasswordField" />
</form>
现在,“下一步”是一个怎样的url?当我运行代码时,表单实际上成功地重定向到主页面,但是它如何知道重定向到主页面呢?为什么name='next'

服务器如何知道哪些信息作为用户名,哪些信息作为密码?我想这就是“name”属性的用途

这样,当信息被发送到数据库时,它就会知道哪些信息应该放在“theUsersPasswordField”中,哪些信息应该放在“TheUsersUsersNameField”中。我错了吗

您必须编写一个脚本(例如php),将表单中的正确值(它们位于$\u POST数组中)放入数据库

在您的示例中,$\u POST['theUsersUsernameField']将保存用户名

<form method="post" action=".">
<p><label for="id_username">Username:</label></p>
<p><label for="id_password">Password:</label></p>
<input type="hidden" name="next" value="/" />
<input type="submit" value="login" />
</form>

用户名:

密码:

“下一步”是一个怎样的url

下一步不是url。
action=“”是表单重定向的url。 /是脚本将计算的值,以查看它必须执行的操作。(通常,您必须将其更改为类似“检查密码”的其他内容)

在$\u POST[]数组中,将有一个键$\u POST['next'],该值将为/

我不熟悉Django,但我希望这能有所帮助

这样,当信息被发送到数据库时,它就会知道哪些信息应该放在“theUsersPasswordField”中,哪些信息应该放在“TheUsersUsersNameField”中。我错了吗

您必须编写一个脚本(例如php),将表单中的正确值(它们位于$\u POST数组中)放入数据库

在您的示例中,$\u POST['theUsersUsernameField']将保存用户名

<form method="post" action=".">
<p><label for="id_username">Username:</label></p>
<p><label for="id_password">Password:</label></p>
<input type="hidden" name="next" value="/" />
<input type="submit" value="login" />
</form>

用户名:

密码:

“下一步”是一个怎样的url

下一步不是url。
action=“”是表单重定向的url。 /是脚本将计算的值,以查看它必须执行的操作。(通常,您必须将其更改为“检查密码”之类的其他内容)

在$\u POST[]数组中,将有一个键$\u POST['next'],该值将为/


我不熟悉Django,但我希望这有助于控件元素(如
input
中的
name
属性)为控件指定名称。它有两个基本效果:1)控件需要一个名称才能“成功”,这意味着在提交表单时,它的名称=值对将被包括到表单数据中;以及2)该属性指定将作为名称=值对的第一部分包含的内容

这完全取决于服务器端表单处理程序如何处理表单数据中的name=value对(如果有的话)。他们可能在一些数据库中有一个简单的通信,但这只是一种可能性。而且表单处理根本不需要基于数据库


name
属性值在HTML中没有预定义的含义。它们只是选择用于此上下文的字符串,它们可能是描述性的或助记的,也可能不是

但是,选择
name
属性值可能会产生副作用。浏览器可能会为用户提供一个先前输入数据的菜单,这样,如果您填写了一些表格(可能在不同的网站上),其中有一个名为
email
的控件,则您可以只输入一次您的电子邮件地址,然后接受浏览器建议的任何输入。这可能被视为一种便利或对数据安全的威胁。在HTML5 CR中,有许多用途的建议

为完整起见,需要补充的是,在浏览器实践中,根据HTML5 CR,有两个名称具有特殊含义:
\u charset\u
isindex


名称
next
并不特别,但在这种情况下,它似乎指定了要移动到的下一页。它是为隐藏字段定义的,因此它独立于用户输入而生效。

控件元素(如
input
中的
name
属性为控件指定名称。它有两个基本效果:1)控件需要一个名称才能“成功”,这意味着在提交表单时,它的名称=值对将被包括到表单数据中;以及2)该属性指定将作为名称=值对的第一部分包含的内容

这完全取决于服务器端表单处理程序如何处理表单数据中的name=value对(如果有的话)。他们可能在一些数据库中有一个简单的通信,但这只是一种可能性。而且表单处理根本不需要基于数据库


name
属性值在HTML中没有预定义的含义。它们只是选择用于此上下文的字符串,它们可能是描述性的或助记的,也可能不是

但是,选择
name
属性值可能会产生副作用。浏览器可能会为用户提供一个先前输入数据的菜单,这样,如果您填写了一些表格(可能在不同的网站上),其中有一个名为
email
的控件,则您可以只输入一次您的电子邮件地址,然后接受浏览器建议的任何输入。这可能被视为一种便利或对数据安全的威胁。在HTML5 CR中,有许多用途的建议

为了完整性,需要在浏览器实践中根据HTML5 CR添加
<form method="post" action=".">
<p><label for="id_username">Username:</label></p>
<p><label for="id_password">Password:</label></p>
<input type="hidden" name="next" value="/" />
<input type="submit" value="login" />
</form>