2014-01-09 6 views
1

У меня есть форма, из которой я извлекаю данные из базы данных и заполняю все поля для редактирования существующей записи. Похоже, что это в настоящее время установить переключатель:Тернарная логика PHP на кнопке радио

<input type="radio" id="statusActive" value="1" name="status" <?php if ($departmentData->thresholdActive == "1"){ echo 'checked'; }else{ echo ''; } ?>> Active 

Что бы троичной логики подход сказать:

Если POST верно, нам почтовые данные еще использовать один из базы данных?

+1

какой смысл использовать тернарный оператор, если у вас есть только одно действие ('echo '';' does no effect)? Пользователь регулярный 'if()' –

+0

Итак, скажем, в базе данных отмечен выбор A. Когда я его вытащил, я хочу предварительно выбрать выбор A. Однако, если я выберу выбор B, но не заполню другое поле, его нужно будет сохранить все данные для записи, поэтому мне не нужно заполнять все это снова – SBB

+0

С переключателями , должен быть установлен только один из группы. Мне кажется, что вы действительно спрашиваете, как установить значение по умолчанию для набора радиостанций (из базы данных) и переопределить это с содержимым POST-переменной, если оно присутствует. Если это так, я рекомендую переформулировать вопрос. Вы после эффекта, а не конкретный метод (он называется [проблема XY] (http://mywiki.wooledge.org/XyProblem)) – Floris

ответ

3
<input type="radio" 
     id="statusActive" 
     value="1" 
     name="status" 
     <?php echo ($departmentData->thresholdActive == "1") ? 'checked' : ''; ?> 
> 
0

Тройная выражение, используя следующие

if ($departmentData->thresholdActive == "1") 
{ 
    echo 'checked'; 
} 
else 
{ 
    echo ''; 
} 

Было бы

echo $departmentData->thresholdActive == "1" ? 'checked' : ''; 
0

"троичной логики" - вы, вероятно, хотите

<?php echo ($departmentData->thresholdActive == "1")? 'checked':'';?> 

Но если вы первый хотите проверьте, является ли POST истинным, это было бы чище так, чтобы mething как

(isset($_POST))?$_POST['index'] : $dbValue; 

Где 'index' относится к конкретному сообщению переменной (который я принимаю присутствует, когда POST установлена; вы не указали, следует ли проверять значение POST, поэтому трудно догадаться); и предполагает, что вы знаете, как установить $dbValue со значением из базы данных

Смежные вопросы