首页 文章

$ _POST中设置了哪些空表单字段?

提问于
浏览
1

提交HTML表单后,我注意到一些空输入字段被发送到$ _POST数组而其他字段没有(它们都有一个name属性) . 什么决定了什么,什么没有?

<!DOCTYPE html>
<head><title>EXAMPLE TEST</title></head>
<body>

<form action="/test.php" method="post">
  <input type="text" name="text">
  <input type="radio" name="radio">
  <input type="checkbox" name="checkbox">
  <input type="date" name="date">
  <textarea name="textarea" rows="5"></textarea>
  <input type="submit" name="submit">

  <!-- etc... -->
</form>

<?php var_dump($_POST); ?>
</body>
</html>

保持所有字段不变并提交表单,var_dump($ _ POST)显示:

array(3) { ["text"]=> string(0) "" ["textarea"]=> string(0) "" ["submit"]=> string(6) "Submit" }

我问这个是因为我的脚本“似乎”将空的收音机添加到$ _POST [“radio”]并且我的脚本工作正常,但现在突然它没有出现在数组中 . 我没有在我的脚本中修改任何内容 . 但我的问题不是关于我的脚本,我的问题是:我如何知道在$ _POST数组中设置了哪些空字段,这是否始终保证?

1 回答

  • 3
    • 复选框和单选按钮只有在选中后才会发送 .

    • 将始终发送文本输入(as long as they are not disabled),但如果未填写则为空字符串 .

    如果单击它们,将发送

    • 提交按钮 .

    浏览器和标准决定了这一点 . 它与PHP没有任何关系 .

相关问题