2013-12-25 4 views
0

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

 $_POST['faction'] = ($_POST['faction'] == "s")? "S" : "K"; 

Я хочу добавить третий вариант, который является «R», и я не могу заставить его работать.

Идеи, пожалуйста?

+1

Что вы имеете в виду выпадающий? PHP выполняется на стороне сервера. Почему бы просто не раз использовать 'if-else'? – Harry

+0

Вы пытаетесь получить значение drop down в PHP? – Noor

ответ

1

Хотя добавление другого заявления ternary в ваше заявление возможно, я думаю, что это повлияет на читаемость кода.

Использование array сделает это проще.

$option_array = array('r' => 'R', 's' => 'S', 'k' => 'K'); 

if (array_key_exists($_POST['faction'])) { 
    $_POST['faction'] = $option_array[$_POST['faction']] 
} 

Вы можете выбрать, чтобы добавить array_key_exists, чтобы убедиться, что вы не обновляя $_POST['faction'] если $_POST['faction'] содержит другие значения, но это ваш выбор.

Другой подход похож на ваш с несколькими тройными операций:

$_POST['faction'] = ($_POST['faction'] == "s") ? ($_POST['faction'] == "r" ? "R" : "S") : "K"; 
+0

Что это такое в моей таблице, у меня есть 3 варианта и из выпадающего меню в html-коде, он выбирает этот параметр, а затем отображает его как информацию. Я пробовал ваш код с несколькими тройными операциями, но это не сработало. –

+0

Пожалуйста, опубликуйте вывод 'var_dump ($ _ POST)' – vee

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