У меня есть два массива, один из которых имеет список всех основных направлений, а другой - список основных по выбранному проекту.
данные извлекаются из базы данных. Я хочу пройтись по списку массива со списком мажоров, и, если он включает какой-либо из мажоров проекта, я хочу отобразить его как выбранный в выпадающем списке выбора.
Я пытался использовать вложенный цикл while для итерации по обоим массивам, но отображал только одну мажор вместо двух
$majorList = $majorObject->getICTProjectMajor(); // row[0]
$assignedMajor = $projectMajorObject->getProjectMajor(28); //row[0]
if ($assignedMajor != false) {
while ($assignedMajorRow = mysqli_fetch_array($assignedMajor)) {
while ($row = mysqli_fetch_array($majorList)) {
echo "<option value='$row[0]'";
foreach ($assignedMajorRow as $majorID) {
if ($majorID == $row[0]) {
echo " selected";
}
echo ">$row[1]</option>'";
}
echo "</select>";
}
echo "</select>";
}
}
Функции
public function getProjectMajor($projectID)
{
if ($this->dbc != NULL) {
$selectQuery = "SELECT Major.majorID FROM ProjectMajor JOIN Major on Major.majorID= ProjectMajor.majorID where projectID=$projectID";
$selectResult = mysqli_query($this->dbc, $selectQuery);
if ($selectResult != FALSE) {
return $selectResult;
} else {
return false;
}
} else {
return false;
}
}
public function getICTProjectMajor()
{
if ($this->dbc != NULL) {
$selectQuery = "SELECT * FROM Major where Major.programmeID=4 ";
$selectResult = mysqli_query($this->dbc, $selectQuery);
if ($selectResult != FALSE) {
return $selectResult;
} else {
return false;
}
} else {
return false;
}
}
В списке выбора в настоящее время отображается только один мажор вместо двух