alexts 18 Опубликовано 22 января, 2014 Жалоба Share Опубликовано 22 января, 2014 Ситуация следующая: В админке "Кто онлайн" вижу адреса посетителей -"белые" разумеется. А когда формируется заказ - записывается локальный (серый) адрес сервера. В чем засада, где рыть? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 22 января, 2014 Жалоба Share Опубликовано 22 января, 2014 Вот такой строкой записывается ip в базу в /checkout_process.php: if ($_SERVER["HTTP_X_FORWARDED_FOR"]) { $customers_ip = $_SERVER["HTTP_X_FORWARDED_FOR"]; } else { $customers_ip = $_SERVER["REMOTE_ADDR"]; } Попробуйте заменить на: $customers_ip = $_SERVER["HTTP_X_FORWARDED_FOR"]; Ссылка на сообщение Поделиться на другие сайты
alexts 18 Опубликовано 22 января, 2014 Автор Жалоба Share Опубликовано 22 января, 2014 Нет не помогает. Помониторил процесс. Пока на главной , в карточке товара - у клиента белый адрес Как только в Личный кабинет, добавляем в корзину - сразу "перескакивает", т.е. заменяется на серый адрес сервера Видно в админке в Кто онлайн. То есть к моменту записи он уже неверный. Млин, шаманство какое то... Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 22 января, 2014 Жалоба Share Опубликовано 22 января, 2014 Я тогда даже и не знаю, что сказать. Именно этот php код достаёт ip. Ссылка на сообщение Поделиться на другие сайты
alexts 18 Опубликовано 22 января, 2014 Автор Жалоба Share Опубликовано 22 января, 2014 :( Что то даже не пойму за что зацепиться... Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 22 января, 2014 Жалоба Share Опубликовано 22 января, 2014 В гугле много тем на тот же stackoverflow, если поискать например по $_SERVER["REMOTE_ADDR"] client ip Ссылка на сообщение Поделиться на другие сайты
alexts 18 Опубликовано 23 января, 2014 Автор Жалоба Share Опубликовано 23 января, 2014 Для начала нужно понять где это переопределение происходит. А что делает inc/vam_get_ip_address.inc.php там вот такой интресный код function vam_get_ip_address() { if (isset($_SERVER)) { if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $ip = $_SERVER['HTTP_X_FORWARDED_FOR']; } else if (isset($_SERVER['HTTP_CLIENT_IP'])) { $ip = $_SERVER['HTTP_CLIENT_IP']; } else { $ip = $_SERVER['REMOTE_ADDR']; } } else { if (getenv('HTTP_X_FORWARDED_FOR')) { $ip = getenv('HTTP_X_FORWARDED_FOR'); } else if (getenv('HTTP_CLIENT_IP')) { $ip = getenv('HTTP_CLIENT_IP'); } else { $ip = getenv('REMOTE_ADDR'); } } return $ip; } Как бы не он первоначально определяет IP клиента? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 23 января, 2014 Жалоба Share Опубликовано 23 января, 2014 Где записывается ip в заказ я выше писал. Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения