PHP多个下拉变量空

时间:2011-07-20 05:31:03

标签: php variables drop-down-menu

我正在三个不同的下拉菜单上执行一些验证。如果所有三个变量都为NULL,我想将用户引导到特定错误。我要求访问者选择其中一个下拉菜单,而不是全部三个。这是我无法看到的代码行:

if ( $dropdown1 == 'NULL', $dropdown2 == 'NULL', $dropdown3 == 'NULL' ) {
echo '<h1>Error Edited For the Sake of Brevity</h1>';
}
else 

Apreciate任何人都可以与我分享的想法。 再次感谢, --Matt

5 个答案:

答案 0 :(得分:1)

好吧,你可能从$ _REQUEST / $ _ GET / $ _ POST获得所有值(我在下面使用$ _REQUEST因为它适用于所有人),因为你使用isset

if( !isset( $_REQUEST[ 'dropdown1' ] ) && 
    !isset( $_REQUEST[ 'dropdown2' ] ) && 
    !isset( $_REQUEST[ 'dropdown3' ] ) ) 
{
    // none of them are set.
}

如果你真的想查看变量本身是否设置为null,那么你应该使用is_null

if( is_null( $dropdown1 ) && 
    is_null( $dropdown2 ) && 
    is_null( $dropdown3 ) )
{
    // none of them are set.
}

最后,如果您有理由相信它们将成为STRING值'NULL',那么您可以使用==(这是一种相对罕见的情况):

if( 'NULL' == $dropdown1 && 
    'NULL' == $dropdown2 && 
    'NULL' == $dropdown3 )
{
    // none of them are set.
}

您可以更改以上任何内容进行测试,以查看是否使用||设置了其中任何一个(或)代替&amp;&amp; (和):

if( 'NULL' == $dropdown1 || 
    'NULL' == $dropdown2 || 
    'NULL' == $dropdown3 )
{
    // one of them is not set.
}

答案 1 :(得分:0)

我假设您正在尝试进行布尔AND比较,这在PHP中是:

if ( $dropdown1 == 'NULL' && $dropdown2 == 'NULL' && $dropdown3 == 'NULL' )...

答案 2 :(得分:0)

if ( $dropdown1 == 'NULL', $dropdown2 == 'NULL', $dropdown3 == 'NULL' ) {

应该是

if ( $dropdown1 == 'NULL' || $dropdown2 == 'NULL' || $dropdown3 == 'NULL' ) {

在这种情况下,如果任何变量为null,它将显示您的错误消息

答案 3 :(得分:0)

您不应该使用逗号分隔条件

if ( $dropdown1 == 'NULL' || $dropdown2 == 'NULL' || $dropdown3 == 'NULL' )

答案 4 :(得分:0)

如果要在所有下拉列表为空时给出错误消息,则应使用此条件

if($ dropdown1 =='NULL'&amp;&amp; $ dropdown2 =='NULL'&amp;&amp; $ dropdown3 =='NULL'){

echo $ error_msg; }