【问题标题】:I want to get values in PHP throughout a html form我想在整个 html 表单中获取 PHP 中的值
【发布时间】:2020-03-13 14:13:05
【问题描述】:

我是 PHP 新手,想通过表单发送这些数组,但无法将其存储在变量中并访问它们

HTML

<form action="./index.php" method="post">
<select name="multicheckbox[]" multiple="multiple" class="4colactive">
    <option value="LunVie" name="LunVie">Lunes a Viernes</option>
    <option value="LunSab" name="LunSab">Lunes a Sábados</option>
    <option value="Todos" name="Todos">Todos los días</option>
    <option value="Otros" name="Otros">Otros</option>
</select>
<button type="submit">Enviar</button>
</form>

PHP

<?php
  $values = $_POST["multicheckbox"];
  echo $values[2];
?>

【问题讨论】:

  • 认为您的帖子需要方括号:$_POST["multicheckbox"]
  • multicheckbox 真的是 select 字段的好名字吗?)
  • 这能回答你的问题吗? $_POST Array from html form

标签: php html forms post


【解决方案1】:

multicheckbox 是一个数组,遍历它。

foreach($_POST["multicheckbox"] as $check) {
    echo $check . "<br />\n";
}

还要注意options 没有names,select 有一个namehttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/option

<select name="multicheckbox[]" multiple="multiple" class="4colactive">
    <option value="LunVie">Lunes a Viernes</option>
    <option value="LunSab">Lunes a Sábados</option>
    <option value="Todos">Todos los días</option>
    <option value="Otros">Otros</option>
</select>

【讨论】:

  • 没错。但是,如果我可以提供一个建议,那就是在回显时使用某些东西来分隔值。这可以通过几种方式来实现。通过空格,&lt;br&gt; 类型的东西,并在末尾添加 "\n",这将产生格式良好的 HTML 输出。
  • @FunkFortyNiner 好主意。谢谢。
  • 我不断收到一条错误消息,提示 Undefined index: multicheckbox in C:\xampp\htdocs\index.php on line 5Warning: Invalid argument provided for第 5 行 C:\xampp\htdocs\index.php 中的 foreach() @user3783243
  • 这表明表单值并不总是提交。在这种情况下使用isset!emptyif(!empty($_POST["multicheckbox"])) { ... }
猜你喜欢
  • 2015-12-11
  • 2021-08-18
  • 1970-01-01
  • 2012-07-19
  • 2021-08-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多