在我的 html 中我有
<input type="hidden" name="Code_value" value="xyz">
<input type="hidden" name="Code_value" value="abc">
<input type="hidden" name="Code_value" value="rst">`
当我提交时,我将其放入我的 ASp.net 代码中,我将它们视为
string Items = Request.Form["Code_value"];
项目的值为xyz,abc,rst
在 PHP 中 $Items=$_POST['Code_value'];
元素的值(value)是rst
它采用 php 中的最后一个值是因为有多个 Code_value 项如果是的话为什么它不只采用 Asp.net 中的最后一个值
最佳答案
这完全取决于 PHP 和 ASP.NET 读取请求的方式。如果 ASP.NET 多次遇到相同的表单字段名称,它将附加值。另一方面,PHP 会用当前值覆盖以前的值,因此您只能获得 $_GET 或 $_POST 中的最后一个值。
你有两个选择。
第一个是简单地告诉 PHP 将有问题的字段视为数组。这是最简单的方法,因为您只需在字段名称末尾添加方括号即可。
<input name="field[]" value="1" />
<input name="field[]" value="2" />
<input name="field[]" value="3" />
如果您愿意,也可以为数组中的每个元素指定一个特定的键。
<input name="field[foo]" value="1" />
<input name="field[bar]" value="2" />
<input name="field[baz]" value="3" />
另一种方法是读取脚本的原始输入并自行处理。
$postdata = file_get_contents("php://input");
此方法要复杂得多,因为您必须自己解析所有输入数据。它还具有 limitations 。
因此,我建议您使用第一种方法。
关于php - 在 PHP 和 ASP.net 中发布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9849976/