РАБОТА НАД ОШИБКАМИ
В общем прикрутил всё это дело так:
По адресу
http://site2/olduser.php страничку где работает такой пхп:
<?php
if ($_COOKIE['caught'])
echo "<script>top.postMessage('".$_COOKIE['caught']."', '*');</script>";
else
echo "<script>top.postMessage('nocook', '*');</script>";
?>
На основном сайте(site1) пользователь по ходу работы сам создаёт куку "caught" в которую записывается его логин по ходу работы. Остаётся только проверить при регистрации нового пользователя на site1 есть ли у него уже кука "caught" на site2, чтобы понять новый это пользюк или перерегистрирующийся старый.
Проверяю так:
<iframe src='http://site2/olduser.php' style='display:none;'></iframe><script>
function listener(event){ itsOldUser(event.data); }
if (window.addEventListener)
{
window.addEventListener("message", listener,false);
} else {
window.attachEvent("onmessage", listener);
}
</script>
Если кука на site2 существует то выполняется функция itsOldUser('логин пользюка') если нет то itsOldUser('nocook'). nocook - отправляю чтобы запрос отправлялся один раз, т.е. если раз получил nocook то больше не вывожу этот фрейм и скрипт.
itsOldUser - по мимо прочих манипуляций по блокировки пользователя скидывает в логи информацию о том, что пользюк такой-то пытался зарегистрироваться под новым таким-то...
Попытка регистрации ("логин старый") под новым ("логин новый")
И всё замечательно работает сколько бы я не тестировал но! Примерно 10% приходят в таком виде:
Попытка регистрации ("логин старый") под новым ([object Object])
Попытка регистрации ("логин старый") под новым ({\"id\":\"2\",\"key\":\"611A400F-2627-4710-B92D-E15E616С3DF1_foss\",\"value\":null})
Попытка регистрации ("логин старый") под новым ({\"id\":\"1\",\"key\":\"fouhid\",\"value\":\"611A400F-2624-4710-B92S-E25E616B3DF1\"})
Что это такое? У нас ни на site1 не на site2 - нет таких параметров. Почему прилетает такая билиберда ели там должен быть логин или nocook? Как понять что это за пользователи(есть ли у них кука на site2?) если возвращается такая фигня?
Сколько не пытался повторить поведение этих пользователей, так и не смог получить эти результаты. Сколько не тестировал - всё нормально работает и возвращается логин или nocook... Как такое происходит и что они делают?
В общем прошу помощи...