Многократные раскрывающиеся переменные PHP Пусто - PullRequest
0 голосов
/ 20 июля 2011

Я выполняю некоторую проверку в трех разных выпадающих меню.Если все три переменные равны NULL, я хочу направить пользователя к конкретной ошибке.Я прошу посетителя выбрать один из раскрывающихся списков, а не все три.Вот моя строка кода, которую я не вижу, чтобы начать работать:

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

Цените любые мысли, которыми кто-либо может поделиться со мной.Еще раз спасибо, --Matt

Ответы [ 5 ]

1 голос
/ 20 июля 2011

Ну, вы, вероятно, получаете все значения из $ _REQUEST / $ _ GET / $ _ POST (я использую $ _REQUEST ниже, потому что он работает для всех), для этого вы бы использовали isset .

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

Если вы действительно хотите посмотреть, не установлены ли сами переменные на нуль, вам следует использовать 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.
}

Вы можете изменить любое из вышеперечисленного для проверкичтобы увидеть, если какой-либо из них не установлен с помощью ||(или) вместо && (и):

if( 'NULL' == $dropdown1 || 
    'NULL' == $dropdown2 || 
    'NULL' == $dropdown3 )
{
    // one of them is not set.
}
0 голосов
/ 20 июля 2011

если вы хотите выдать сообщение об ошибке, когда все раскрывающиеся списки равны нулю, вам следует использовать это условие

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

echo $ error_msg;}

0 голосов
/ 20 июля 2011
if ( $dropdown1 == 'NULL', $dropdown2 == 'NULL', $dropdown3 == 'NULL' ) {

должно быть

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

В этом случае, если любая из переменных имеет значение null, будет отображаться сообщение об ошибке

0 голосов
/ 20 июля 2011

Вы не должны использовать запятые для разделения условий

if ( $dropdown1 == 'NULL' || $dropdown2 == 'NULL' || $dropdown3 == 'NULL' )
0 голосов
/ 20 июля 2011

Я предполагаю, что вы пытаетесь выполнить логическое сравнение AND, которое в PHP:

if ( $dropdown1 == 'NULL' && $dropdown2 == 'NULL' && $dropdown3 == 'NULL' )...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...