我有多个同名的文本框,例如:
<input type = "text" name = "addCart"/>
<input type = "text" name = "addCart"/>
<input type = "text" name = "addCart"/>
<input type = "text" name = "addCart"/>
如果我从 php 执行 $_Request 并且我想仅从第一个和第四个文本框输入值,我该怎么做?谢谢
你不能。最后一个输入框的值将覆盖所有其他输入框的值,因为它们具有相同的名称。
你可以考虑做的是使用name="addCart[]"
然后, $_REQUEST['addCart'] 将是一个数组。
像:
<input type="text" name="addCart[]" value="a">
<input type="text" name="addCart[]" value="b">
然后 $_REQUEST['addCart'] (或 $_POST 或 $_GET 无论您使用什么)将包含两个字符串 'a' 和 'b' 的数组。
编辑:为了完整起见,我应该注意这个数组是一个普通数组。因此 $_REQUEST['addCart'][x] 其中 x 是某个整数索引,只要 count($_REQUEST['addCart']) > x 就有效。
<input type = "text" name = "addCart[]"/>
<input type = "text" name = "addCart[]"/>
<input type = "text" name = "addCart[]"/>
<input type = "text" name = "addCart[]"/>
访问使用:
$_REQUEST['addCart'][0]
...
$_REQUEST['addCart'][3]
试试这个,这将发布 addCart 的数组。使用 $_REQUEST,您可以通过 addCart id 访问第一个和第四个 texhbox
<input type = "text" name = "addCart[]"/>
<input type = "text" name = "addCart[]"/>
<input type = "text" name = "addCart[]"/>
<input type = "text" name = "addCart[]"/>
<?php
echo $_REQUEST['addCart'][0];
echo $_REQUEST['addCart'][3];
?>
如果您想在使用 PHP 时使用该样式的名称,那么您必须绕过$_POST
or $_GET
,获取原始数据并自行解析。
对于 GET 请求,则意味着查看$_SERVER['REQUEST_URI']
和 POST 在file_get_contents('php://input');
如果重命名字段以使名称以结尾,[]
则它们将显示为数组。
IE
<input type = "text" name = "addCart[]"/>
将呈现为
$_GET['addCart'][] or $_POST['addCart'][]
我不相信这是可能的。尝试使用稍微不同的名称,例如 name1、name2 等