传递方法,html/php

发布于 2024-11-16 17:55:41 字数 146 浏览 0 评论 0原文

如果我有 3 个复选框,您可以检查可用的交通工具:出租车、火车、公共汽车……我应该如何以良好的方式通过它们?您不能通过 Transport = 公共汽车、火车(您检查过的那些)传递一个数组吗?或者您可能必须一次单独向它们发送一个变量,因为它位于表单内(并且已经全部是一个数组)?

If i have 3 checkboxes that you can check for the transport available: Taxi, Train, Bus.. how should i pass them in a nice way? Cant you like pass a array with Transport = bus, train (those you checked), or maybe you have to send them seperatly one variable at a time, because it is inside a form (and already are a array all of it)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

他是夢罘是命 2024-11-23 17:55:42

根据表单提交的方法类型,所有输入字段都将作为 $_POST 或 $_GET 数组的一部分传递。无论复选框是否被选中,复选框都会以 name=on 或 name= 的形式传递。根据您处理提交的表单数据的方式,可以使用不同的方法来处理这些值。我希望这有帮助吗?

All input fields will be passed as part of your $_POST or $_GET arrays, based on the method type of your form submission. Checkboxes are passed as name=on or name= whether the checkboxes are selected or not. Depending on how you're processing the submitted form data there are different ways to work with the values. I hope this helps?

暗藏城府 2024-11-23 17:55:42

如果您使用这样的内容:

<input type="checkbox" name="transport[]" value="bus" />
<input type="checkbox" name="transport[]" value="train" />
<input type="checkbox" name="transport[]" value="taxi" />

这些值将作为可通过 $_POST['transport'] 访问的数组传递。如果用户选中第一个和最后一个复选框 $_POST['transport'] 将包含两个字符串: 0 => “总线”, 1 => “出租车”。

另请参阅 http://jetlogs.org/2007/07/ 19/在-php中传递输入数组/

If you use something like this:

<input type="checkbox" name="transport[]" value="bus" />
<input type="checkbox" name="transport[]" value="train" />
<input type="checkbox" name="transport[]" value="taxi" />

The values will be passed as an array accessible with $_POST['transport']. If the user checks the first and the last checkboxes $_POST['transport'] will contain two strings: 0 => "bus", 1 => "taxi".

Also see http://jetlogs.org/2007/07/19/passing-input-arrays-in-php/.

絕版丫頭 2024-11-23 17:55:41

我假设您正在谈论将数据从客户端发送到服务器。如果是这样,您可以为复选框指定相同的名称:

<input type="checkbox" name="transport[]" value="Taxi"> Taxi <br />
<input type="checkbox" name="transport[]" value="Train"> Train <br />
<input type="checkbox" name="transport[]" value="Bus"> Bus <br />

发送表单时,数据将以 $_POST['transport'] 中的数组形式提供(或 $_GET,取决于您使用的方法)。输入字段名称中的[]将使PHP将数据解析为数组。

更多信息请参见来自外部源的变量


更多解释:

如果没有括号(即 []),生成的查询字符串将如下所示(假设选择了 Taxi 和 Train):

transport=Taxi&transport=Train

PHP,与其他语言,只会考虑同一键的最后一个值。为了使 PHP 将值与数组具有相同的键,您必须将 [] 附加到名称中。

I assume you are talking about sending the data from the client to the server. If so, you can give the checkboxes the same name:

<input type="checkbox" name="transport[]" value="Taxi"> Taxi <br />
<input type="checkbox" name="transport[]" value="Train"> Train <br />
<input type="checkbox" name="transport[]" value="Bus"> Bus <br />

When you sent the form, the data will be available as array in $_POST['transport'] (or $_GET, depending on which methods you use). The [] in the input field name will make PHP parse the data as array.

More information in Variables From External Sources.


Some more explanation:

Without the brackets (i.e. []), the resulting query string would look like this (assuming Taxi and Train are selected):

transport=Taxi&transport=Train

PHP, in contrast to other languages, will only consider the last value for the same key. In order to make PHP treat values with the same key as array, you have to append [] to the name.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文