显示$ job为undefined。我的switch语句有什么问题?
在一个开关的情况下,我们只需要传递一个变量但是如何在这里附加数组。
list_questatus也是数组的值
if(isset($_POST['list_queuestatus']))
{
$selected= $_POST['list_queuestatus'];
switch($selected[$job]){
case 'r':
if($state[$jid]=="r"){
$jobs[$j]=$jid;
}
break;
}
}
答案 0 :(得分:1)
$j=0;
$jobs=array();
for($i = 5; $i < count($output); ++$i) {
$jid=trim(substr($output[$i],0,30));
$jobid[$jid]=trim(substr($output[$i],0,30));
$username[$jid]=trim(substr($output[$i],30,15));
$queue[$jid]=trim(substr($output[$i],47,15));
$jobname[$jid]=trim(substr($output[$i],63,15));
$sessionid[$jid]=trim(substr($output[$i],79,8));
$nds[$jid]=trim(substr($output[$i],88,4));
$tsk[$jid]=trim(substr($output[$i],93,5));
$reqmem[$jid]=trim(substr($output[$i],99,6));
$reqtime[$jid]=trim(substr($output[$i],106,5));
$state[$jid]=trim(substr($output[$i],112,2));
$elaptime[$jid]=trim(substr($output[$i],114,8));
if(isset($_POST['list_queuestatus']))
{
$selected= $_POST['list_queuestatus'];
switch($selected[$job]){
case 'R':
if($state[$jid]=="R"){
$jobs[$j]=$jid;
}
break;
case 'Q':
if($state[$jid]=="Q"){
$jobs[$j]=$jid;
}
break;
case 'H':
if($state[$jid]=="H"){
$jobs[$j]=$jid;
}
break;
case 'S':
if($state[$jid]=="S"){
$jobs[$j]=$jid;
}
break;
case 'W':
if($state[$jid]=="W"){
$jobs[$j]=$jid;
}
break;
case 'E':
if($state[$jid]=="E"){
$jobs[$j]=$jid;
}
break;
case 'A':
$jobs[$j]=$jid;
}
}
else{
$jobs[$j]=$jid;
break;
}
}
$selected='';
function get_options($select)
{
$list_queuestatus=array("--Select Status--"=>"SS","All"=>"A","Running"=>"R","Queued"=>"Q","Held"=>"H","Suspened"=>"S","Waiting"=>"W","Error"=>"E");
$options='';
while(list($k,$v)=each($list_queuestatus))
{
if($select==$v)
{
$options.='<option value"'.$v.'"selected>'.$k.'</option>';
}
else{
$options.='<option value"'.$v.'">'.$k.'</option>';
}
}
return $options;
}
echo '<form action="main.php?page=queuestatus&';
echo '" method="POST">';
echo '<select name="list_queuestatus" onchange="this.form.submit();">';
echo get_options($selected);
echo '</select>';
echo '</form>';
答案 1 :(得分:-1)
请使用$_POST
代替$_post
。请在使用之前声明$ job变量或外部范围。
似乎作业不是变量,而是数组的索引。所以请使用&#39; job&#39;而不是$ job。
希望这能解决您的问题。