【问题标题】:Unknown output in phpphp中的未知输出
【发布时间】:2015-03-30 21:11:37
【问题描述】:

我正在尝试从 php 中的数组中的值创建一个复选框表单,以通过 POST 提交。这是代码:

<?php 
$check = array('beiber' => 'dumb', 'john' => 'singer', 'michael' =>            'legend', 'lovato' => 'firestarter');
$t = 1;
$name = $t;
foreach($check as $x =>$y){
    $name = $t++;
    echo $name;
    echo ' <input type = "checkbox" name =' . $name . 'value =' . $x . '/>' . $x  . $sp . $y . '<br>';
}
?>
<input name = "submit" type = "submit" value = "submit" /><br>

<?php 
if(isset($_POST['submit'])){
    print_r( $_POST);
}
?>

如果选中所有框,单击提交后我得到的输出是:

Array ( [1value] => on [2value] => on [3value] => on [4value] => on [submit]   => submit )

我的问题是为什么它们具有“开”的价值,我该如何解决。谢谢。

【问题讨论】:

  • @john Conde,为什么我被否决了?
  • 我为复选框分配了值,这就是我想要发送到 POST 的内容
  • @brown.cn 我怎么知道?
  • @john Conde 如果你真的检查过代码你会看到的
  • @brown.cn 我刚刚编辑了你的问题。所以我不知道为什么人们不赞成你或关心你在问什么。尽管在阅读了问题并查看了您的 cmets 之后,我猜这是因为您的问题是由于基本故障排除会发现的一个简单错误造成的,而且您的态度很差。

标签: php html post


【解决方案1】:

您输出错误的 html,将输出行更改为:

echo '<input type="checkbox" name="' . htmlspecialchars($name) . '" value="' . htmlspecialchars($x) . '" />' . htmlspecialchars($x . $sp . $y) . '<br>';

注意:

  1. 属性值的引号
  2. 属性名称之间的空格
  3. htmlspecialchars 转义特殊符号

【讨论】:

  • 是的。我想就是这样。你的工作正常。我不认为转义变量会很重要。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-09-07
  • 1970-01-01
  • 2020-03-14
  • 1970-01-01
  • 2011-12-06
  • 2018-05-23
  • 1970-01-01
相关资源
最近更新 更多