PHP:显示依赖于输入的值

时间:2012-08-07 03:45:58

标签: php

在我看来,我有以下选择菜单,说明可用的表单类型类型:

<label for="add_fields_type">Type: </label>
<select name="add_fields_type" id="add_fields_type">
    <option value="input">Input</option>
    <option value="textarea">Text Area</option>
    <option value="radiobutton">Radio Button</option>
    <option value="checkbox">Check Box</option>
</select> 

在我的控制器中,我目前有以下内容,但我不确定如何制作,如果$_REQUEST['add_fields_type']=让我们说radiobutton,那么它将显示相应的代码。< / p>

控制器:

if (isset($_REQUEST['add_fields_type'])) 
        {

            echo $_REQUEST['add_fields_type'];
        }

2 个答案:

答案 0 :(得分:1)

if (isset($_REQUEST['add_fields_type'])) {

    if ($_REQUEST['add_fields_type'] == 'input') {

            // echo stuff for input
    }
    else if ($_REQUEST['add_fields_type'] == 'textarea') {

            // echo stuff for textarea
    }
    else if ($_REQUEST['add_fields_type'] == 'radiobutton') {

            // echo stuff for radiobutton
    }
    else if ($_REQUEST['add_fields_type'] == 'checkbox') {

            // echo stuff for checkbox
    }

}

答案 1 :(得分:1)

另一种方法,使用swapnesh提到的切换代码(比具有多个if语句稍微简洁一些,并且当它遇到正确的情况时会停止):

if (isset($_REQUEST['add_fields_type']))
{
    switch($_REQUEST['add_fields_type'])
    {
        case('input'):
            // echo stuff for input
            break;
        case('textarea'):
            // echo stuff for textarea
            break;
        case('radiobutton'):
            // echo stuff for radiobutton
            break;
        case('checkbox'):
            // echo stuff for checkbox
            break;
        default:
            // echo stuff if the other cases fall through
            break;
    }
}