1

我在页面上有一个按钮,当用户按下它时,它会在页面上创建另一个“无线电元素”。但问题是,在提交表单后,我很难用 PHP 检索值。

这是我的 HTML 代码:

<input type="radio" checked="checked" id="rad-3" title="member-section" name="use_name[0]" value="Test!" />

这是我的PHP代码:

if ($_POST['use_name[0]'] == 'Test!') {
    echo 'It Worked!' ;
} else {
    echo 'Nope!' ;
}

每当我提交表单时,不!总是被呼应出来。任何帮助表示赞赏!

4

2 回答 2

0

PHP 将接收$_POST['use_name']一个数组,其中包含[0]您在 HTML 中指定的键。所以你想测试:

if ($_POST['use_name'][0] == 'Test') {
 // ....
}

调试print_r($_POST)以查看数组的结构。

请注意,如果您不需要在 HTML 中发送特定的数组键,您只需将输入命名为name='use_name[]',PHP 会将它们作为数字索引数组接收。如果需要,您可以更具体,也可以使用字符串键:name='use_name[first_value]'PHP 将接收字符串键,如$_POST['use_name']['first_value']

但是请注意,这不是使用单选按钮的典型方式。由于通常只选择一个,除非您列出多个单选按钮(我们看不到您的 HTML),否则name='use_name[0]按钮不会被绑定为单选组。它们必须都具有相同的名称,并且不同的数组键会将它们变成不同的无线电组。这更常用于复选框。

于 2012-12-04T02:22:32.607 回答
0

您的 POST 变量是 php 中的一个数组,因此您可以像这样访问它:

$_POST['use_name'][0]
于 2012-12-04T02:22:40.980 回答