2016-05-06 2 views
0

Я пытаюсь использовать PHP, чтобы определить, выбрано ли одно или несколько параметров.PHP - Определить, выбрано ли еще один вариант.

У меня есть этот код, который работает для сингулярного элемента:

if (isset($_POST['option43'])) { 
    if (isset($_POST['option41'])) { 
    $sql .= " mysql string"; 
    } else { 
    $sql .= " my other sql string"; 
    } 
} 

Но когда я пытаюсь добавить || чтобы включить другой элемент, PHP не загружается:

if (isset($_POST['option43'])) { 
    if (isset($_POST['option41'] || isset($_POST['option42']))) { 
    $sql .= " mysql string"; 
    } else { 
    $sql .= " my other sql string"; 
} 
} 

Может кто-нибудь помочь мне понять, как сделать эту работу?

Вот HTML:

      <tr> 
           <td><input type="checkbox" name="option41" value="bm" />bm </td> 
           <td><input type="checkbox" name="option42" value="Tv" />tv </td> 
          </tr> 
          <tr> 
           <td><input type="checkbox" name="option43" value="hp" />hp </td> 
          </tr> 

В основном я пытаюсь написать:

IF вариант 43 проверяется, это SQL но если опция 41 или 42 проверяется, ЭТА является SQL-

благодаря

+0

Пожалуйста, покажите свой HTML-код, в противном случае это очень сложно сказать. –

+1

Один из ваших закрывающих круглых скобок намного дальше, чем вы предполагали. –

ответ

1

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

if (isset($_POST['option43'])) { 
    if (isset($_POST['option41']) || isset($_POST['option42'])) { 
    $sql .= " mysql string"; 
    } else { 
    $sql .= " my other sql string"; 
} 
} 

ваша ошибка в, если вы для проверки $_POST['option41'] но вы не завершите IsSet функции скобки после проверки одно условия в этом же вашем проверяют другой вариант. поэтому, пожалуйста, попробуйте код выше. Надеюсь, я решит вашу проблему.

+0

ДА! OMG спасибо. Одна небольшая ошибка может испортить все это, и я могу потратить часы, пытаясь выяснить, где у меня неуместная(). Огромное спасибо. Я попытался ответить на ваш ответ, но эта учетная запись не имеет достаточно высокой репутации. –

0
if (isset($_POST['option43']) && !isset($_POST['option41']) && !isset($_POST['option42'])) { 
    $sql .= " my sql string"; 
}elseif(isset($_POST['option43']) && (isset($_POST['option41']) || isset($_POST['option42']))){ 
    $sql .= " my other sql string"; 
} 
Смежные вопросы