Вам необходимо использовать функцию unset () на каждой итерации, чтобы отключить ключи массива для массивов $tels
и $mails
. Если вы этого не сделаете, то произойдет следующее:
1-я итерация
$tels[0] will have First User Mobile
$tels[1] will have First User Mobile
2-я итерация
$tels[0] will have First User Mobile
$tels[1] will have First User Mobile
$tels[2] will have Second User Mobile
$tels[3] will have Second User Mobile
и так далее, и то же самое для mails
В коде вы назначаете только первые 2 значения ключа, которые всегда будут содержать детали для первого пользователя.
$tel1s = $tels[0];
$tel2s = $tels[1];
Таким образом, решение состоит в том, чтобы добавить unset () * Функция 1020 * в нижней части подзапроса для телефонов и электронной почты.
while ($t < $subrows)
{
$subrow = $subresult->fetch_array(MYSQLI_NUM);
$rs7 = htmlspecialchars($subrow[1]);
$tels[] = $rs7;
$t++;
}
$tel1s = $tels[0];
$tel2s = $tels[1];
unset($tels); /* This will unset the array $tels for next iteration */
Это гарантирует, что на каждой итерации $tels[0]
и $tels[1]
будут переназначены, и вы получите необходимую информацию .
Аналогичным образом отключите массив $mails[]
после присвоения значений переменным $mail1s
и $mail2s
. Это должно решить вашу проблему.