Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP下拉列表变量_Php_Mysql_Variables_Post - Fatal编程技术网

PHP下拉列表变量

PHP下拉列表变量,php,mysql,variables,post,Php,Mysql,Variables,Post,我试图有一个下拉菜单,你可以从3个选项中选择。我有以下代码,但我似乎无法让我的第三个选项工作。有什么想法吗 $_POST['faction'] = ($_POST['faction'] == "s")? "S" : "K"; 我想添加第三个选项,即“R”,但我无法让它工作 想法好吗?尽管在您的语句中添加另一个三元语句是可能的,但我认为这会影响代码的可读性 使用array将使此操作更简单 $option_array = array('r' => 'R', 's' =>

我试图有一个下拉菜单,你可以从3个选项中选择。我有以下代码,但我似乎无法让我的第三个选项工作。有什么想法吗

        $_POST['faction'] = ($_POST['faction'] == "s")? "S" : "K";
我想添加第三个选项,即“R”,但我无法让它工作


想法好吗?

尽管在您的语句中添加另一个
三元
语句是可能的,但我认为这会影响代码的可读性

使用
array
将使此操作更简单

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

if (array_key_exists($_POST['faction'])) { 
    $_POST['faction'] = $option_array[$_POST['faction']]
}
如果
$\u POST['partment']
包含其他值,您可以选择添加
数组\u键\u exists
以确保未更新
$\u POST['partment']
,但这是您的选择

另一种类似于您的方法,具有多个三元操作:

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

你说的下拉是什么意思?PHP在服务器端执行。为什么不重复使用
if else
?您是否试图在PHP中获取下拉值?在我的表中,我有3个选项,从html代码中的下拉菜单中,它选择该选项,然后将其显示为信息。我用多个三元操作尝试了您的代码,但无效。请发布
var\u dump($\u post)