Третья запись в форме приводит к 404 - страница не найдена - PullRequest
0 голосов
/ 02 февраля 2020

Веб-страница WordPress генерирует форму для классных консультантов для оценки студентов. Это генерируется через фрагмент на сайте. Советник вводится, и в форме отображаются студенты для данного конкретного сеанса консультанта. В любом случае, если для третьего учащегося выбрана какая-либо радиокнопка, отправка формы приводит к тому, что страница 404 не найдена.

Если выбор сделан для всех остальных студентов, но выбор не сделан для третьего студента, отправка формы делает то, что она должна делать. Однако, если выбрана любая из переключателей для третьего учащегося, при отправке формы генерируется 404.

Я изменил ее, чтобы использовать раскрывающийся список. Любой выбор для третьего студента приводит к 404.

Вот код html, который отправляется в браузер:

<h3>Advisor's Student Evaluation Input</h3>
<p>Please select the student's promotability status:<br /><br />
<form method='post' action='https://cwops.org/cw-academy-advisor-student-evaluation/' 
name='selection_form_a' ENCTYPE='multipart/form-data'>
<input type='hidden' name='strpass' value='3'>
<table><tr><th colspan='2'>Semester: &nbsp;&nbsp;&nbsp;INTERMEDIATE&nbsp;&nbsp;&nbsp;Time Zone -7</th></tr><tr><td style='width:300px;vertical-align:top;'>Smith, Roland (K7OJL)</td>
<td>
<input class='formInputButton' type='radio' name='student0' value='37635-P' />Promotable<br />
<input class='formInputButton' type='radio' name='student0' value='37635-N' />Not Promotable<br />
<input class='formInputButton' type='radio' name='student0' value='37635-W' />Withdrew or Dropped
</td></tr><tr><td colspan='2'>&nbsp;</td></tr><tr><th colspan='2'>Semester: &nbsp;&nbsp;&nbsp;INTERMEDIATE&nbsp;&nbsp;&nbsp;Time Zone -6</th></tr><tr><td style='width:300px;vertical-align:top;'>Paradelas, Charles (KG5FZ)</td>
<td>
<input class='formInputButton' type='radio' name='student1' value='37792-P' />Promotable<br />
<input class='formInputButton' type='radio' name='student1' value='37792-N' />Not Promotable<br />
<input class='formInputButton' type='radio' name='student1' value='37792-W' />Withdrew or Dropped
</td></tr><tr><td style='width:300px;vertical-align:top;'>Finney, Richard (N5RWF)</td>
<td>
<input class='formInputButton' type='radio' name='student2' value='37962-P' />Promotable<br />
<input class='formInputButton' type='radio' name='student2' value='37962-N' />Not Promotable<br />
<input class='formInputButton' type='radio' name='student2' value='37962-W' />Withdrew or Dropped
</td></tr><tr><td style='width:300px;vertical-align:top;'>Morris, Russell (WQ0N)</td>
<td>
<input class='formInputButton' type='radio' name='student3' value='38158-P' />Promotable<br />
<input class='formInputButton' type='radio' name='student3' value='38158-N' />Not Promotable<br />
<input class='formInputButton' type='radio' name='student3' value='38158-W' />Withdrew or Dropped
</td></tr><tr><td colspan='2'>&nbsp;</td></tr><tr><th colspan='2'>Semester: &nbsp;&nbsp;&nbsp;INTERMEDIATE&nbsp;&nbsp;&nbsp;Time Zone -5</th></tr><tr><td style='width:300px;vertical-align:top;'>Sheldon, Mary Jane (N1RKO)</td>
<td>
<input class='formInputButton' type='radio' name='student4' value='37935-P' />Promotable<br />
<input class='formInputButton' type='radio' name='student4' value='37935-N' />Not Promotable<br />
<input class='formInputButton' type='radio' name='student4' value='37935-W' />Withdrew or Dropped
</td></tr>
<tr><td>&nbsp;</td><td><input class='formInputButton' type='submit' value='Submit' /></form></td></tr>
<tr><td colspan='2'>&nbsp;</td></tr></table>

Вот код php, генерирующий форму:

            foreach($unEvaluatedStudents as $theValue) {
                $valueArray             = explode("|",$theValue);
                $the_first_name         = $valueArray[0];
                $the_last_name          = $valueArray[1];
                $the_call_sign          = $valueArray[2];
                $the_id                 = $valueArray[3];
                $the_level              = $valueArray[4];
                $the_time_zone          = $valueArray[5]; 
                if ($the_level != $prev_level || $the_time_zone != $prev_time_zone) {
                    if (!$firstTime) {
                        $formContent        .= "<tr><td colspan='2'>&nbsp;</td></tr>";
                    } else {
                        $firstTime      = FALSE;
                    }
                    $formContent            .= "<tr><th colspan='2'>Semester: $inp_semester&nbsp;&nbsp;&nbsp;$the_level&nbsp;&nbsp;&nbsp;Time Zone $the_time_zone</th></tr>";
                    $prev_level         = $the_level;
                    $prev_time_zone     = $the_time_zone;
                }
                $formContent            .= "<tr><td style='width:300px;vertical-align:top;'>$the_last_name, $the_first_name ($the_call_sign)</td>
<td>
<input class='formInputButton' type='radio' name='student$arrayCount' value='$the_id-P' />Promotable<br />
<input class='formInputButton' type='radio' name='student$arrayCount' value='$the_id-N' />Not Promotable<br />
<input class='formInputButton' type='radio' name='student$arrayCount' value='$the_id-W' />Withdrew or Dropped
</td></tr>";
                $arrayCount++;
            }
            $content    .= "<div><h3>Advisor's Student Evaluation Input</h3>
<p>Please select the student's promotability status:<br /><br />
<form method='post' action='https://cwops.org/cw-academy-advisor-student-evaluation/' 
name='selection_form_a' ENCTYPE='multipart/form-data'>
<input type='hidden' name='strpass' value='3'>
<table>$formContent
<tr><td>&nbsp;</td><td><input class='formInputButton' type='submit' value='Submit' /></form></td></tr>
<tr><td colspan='2'>&nbsp;</td></tr></table></p></div>";
        }

Я довольно озадачен этим поведением. Помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...