Php 无法获取POST值
为什么myPhp 无法获取POST值,php,arrays,post,Php,Arrays,Post,为什么myecho不打印值1 <dl> <input type='checkbox' class='tinyField' name="informTktUpdate['hd']" value="1" /> Inform user by email </dl> <dl> <input type='checkbox' class='tinyField' name="informTktUpdate['prog']" value="1
echo
不打印值1
<dl>
<input type='checkbox' class='tinyField' name="informTktUpdate['hd']" value="1" /> Inform user by email
</dl>
<dl>
<input type='checkbox' class='tinyField' name="informTktUpdate['prog']" value="1" /> Inform programmer by email
</dl>
echo ($_POST['informTktUpdate']['prog']);
echo ($_POST['informTktUpdate'][prog]);
但还是没什么…从你的问题中还不完全清楚,这似乎是因为:
您的HTML字段具有以下名称:
informTktUpdate['hd']
informTktUpdate['prog']
因此,您需要将这些引号添加到密钥名称中:
$_POST["informTktUpdate"]["'hd'"]
$_POST["informTktUpdate"]["'prog'"]
由于name
属性中的引号只会增加不必要的冗长,因此我建议您从一开始就去掉它们。记住HTML不是PHP
另外,请注意,您可以使用任何常规转储函数检查变量,无需猜测:
var_dump($_POST);
数组(1){
[“informTktUpdate”]=>
阵列(2){
[“'hd'”=>
字符串(1)“1”
[“'prog'”=>
字符串(1)“1”
}
}
最后但并非最不重要的一点是,此代码:
echo ($_POST['informTktUpdate'][prog]);
。。。应该触发一个通知。您没有看到它,这表明您没有将PHP开发框配置为显示错误消息。如果您解决了这个问题,那么进一步的编码应该更加集中。在HTML中,不需要在输入名称
属性中的[]
参数中单独引用(')
改变
<input type='checkbox' class='tinyField' name="informTktUpdate['hd']" value="1" />
尝试改变
到
让它在默认情况下被选中,然后echo$_POST['informTktUpdate']['prog']代码>您的HTML无效。输入和自由文本都不能是定义列表元素的子节点。我试过了-不起作用。ECHO不打印任何东西
<input type='checkbox' class='tinyField' name="informTktUpdate['hd']" value="1" />
<input type='checkbox' class='tinyField' name="informTktUpdate[hd]" value="1" />
echo $_POST['informTktUpdate']['prog'];
<input type='checkbox' class='tinyField' name="informTktUpdate['prog']" value="1" />
<input type='checkbox' class='tinyField' name="informTktUpdate[prog]" checked="checked" value="1" />