Forma de solucionarlo:
Se deben hacer dos consultas, una para la primera tabla y la otra para la segunda tabla, esto es porque primero debemos obtener el id a través de la primera consulta para poder asignarlo en la segunda consulta; las consultas deben hacerse por separado ya que si juntamos las dos tablas lo que hace es duplicar la primera tabla con los registros que encuentre de la segunda.
El ejemplo es el siguiente:
Código PHP:
$oper=$_SESSION['usuario'];
//primera consulta
$sql = mysqli_query($con, "SELECT * FROM medico ORDER BY RAND() LIMIT 1");
while ($registro = mysqli_fetch_row($sql)) {
//metemos el id en una variable
$id = $registro['0'];
echo "<div class='registros-header' id=''>Consecutivo <input type='text' style='width:60px;' id='id_medico' name='id_medico' readonly='readonly' value='".$registro['0']."'</input>";
echo "vdi <input value='".$registro['1']."'</input>";
echo "nivel validación<input type='text' style='width:120px;' id='nivel_validacion' name='nivel_validacion' readonly='readonly' value='".$registro['2']."'</input>";
echo "estatus<input value='".$registro['3']."'</input>";
echo "prefijo<input name='prefijo' id='prefijo' value='".$registro['4']."'</input></div></br></br>";
}
//hacemos la segunda consulta y obtenemos el id de la variable al igualarlo con el id //foraneo de la segunda tabla
$consulta = mysqli_query($con, "SELECT m.*, u.usuario, d.* FROM medico m, usuarios u, domicilio d WHERE u.usuario = '$oper' AND m.id_medico = d.id_medico AND m.id_medico='$id'");
while ($fila=mysqli_fetch_array($consulta)) {
echo "Domicilio"."</br>";
echo "</br><input value='".$fila['34']."'</input>";
echo "<input value='".$fila['35']."'</input>";
echo "<input value='".$fila['36']."'</input>";
echo "<input value='".$fila['37']."'</input>";
}
Y eso es todo por si a alguien le sirve.
Saludos.