У меня есть цикл while, который должен сначала получить individual_id
из таблицы, называемой submitresume, с помощью job_id, которая получена из другой функции. Затем он будет использовать этот идентификатор в другом цикле, чтобы получить first_name
и last_name
из отдельной таблицы. Затем он использовал бы другой цикл while, чтобы получить submitted_id
из представленной таблицы резюме.Пока цикл не возвращает правильный вывод при вложенном
Я разделил первый и последний цикл while, чтобы получить различные значения с выхода.
My first while цикл. Сначала он получает individual_id
из таблицы, называемой submitresume, используя job_id, которую он получает от другой функции. Это дает мне правильный выход двух идентификаторов пользователя: 9 и 4.
global $database;
$query = "SELECT DISTINCT individual_id FROM submittedresume WHERE job_post_id='$id'";
$output = $database->query($query);
while ($row = mysqli_fetch_array($output)) {
$indvId = $row[0];
}
Это второй внутренний цикл. Это дает мне результат Мэри Джейн («Нет повторения») и Том Сойер.
$indvId = $row[0];
$sql = "SELECT * FROM individual WHERE individual_id='$indvId'";
$result = $database->query($sql);
while ($details = mysqli_fetch_array($result)) {
$first = $details['first_name'];
$last = $details['last_name'];
echo $first;
echo $last;
}
Это вся моя функция:
public function displayApplications($id){
global $database;
$query = "SELECT DISTINCT individual_id FROM submittedresume WHERE job_post_id='$id'";
$output = $database->query($query);
while ($row = mysqli_fetch_array($output)) {
$indvId = $row[0];
$sql = "SELECT * FROM individual WHERE individual_id='$indvId'";
$result = $database->query($sql);
while ($details = mysqli_fetch_array($result)) {
$first = $details['first_name'];
$last = $details['last_name'];
$sqlquery = "SELECT DISTINCT resume_title FROM submittedresume WHERE individual_id='$indvId' order by submitted_id";
$data = $database->query($sqlquery);
if (mysqli_num_rows($data) == 0) {
echo "Database is empty <br>";
} else {
while (($name = mysqli_fetch_array($data))) {
echo $first . " " . $last . " "."<a href=handleDownload.php?id=$id>$name[0]</a><br>";
}
}
}
}
}
Это то, что я получаю сейчас:
first_name | last_name | resume_name
Mary | Jane | resume_1
Mary | Jane | resume_2
Это то, что я ищу:
first_name | last_name | resume_name
Mary | Jane | resume_2
Tom | Sawyer | resume_1
вам нужно переписать ваши запросы и использовать 'JOIN' вместо – CodeGodie