Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вопрос про куки (https://javascript.ru/forum/misc/41332-vopros-pro-kuki.html)

botinok 09.09.2013 01:14

Вопрос про куки
 
Здравствуйте! Хочу реализовать идею!
К примеру по партнёрской ссылке https://www.site.com/join.php?id=botinok id - сохраняется на компе в куках с этого сайта. (site.com)
Как сделать так чтобы человек заходил через сервис e-autopay.com по партнёрской ссылке http://botinok.partnerka.e-autopay.com на сайт www.test.com а Id- botinok сохранялось в куках для домена site.com

И ещё! Вот скрипт про куки с домена site.com Растолкуйте о чём этот код:- по полочкам для чайника).. Если его подредактировать и убрать всё лишнее и вставить на test.com то идея реализуется? Спасибо!


<script type="text/javascript">
var last_member_id = "dcnorthern1";
var cookie_member_id = getCookie("id");

function getCookie(c_name)
{
var i,x,y,ARRcookies = document.cookie.split(";");
for (i = 0; i < ARRcookies.length; i++)
{
x=ARRcookies.substr(0,ARRcookies.indexOf("="));
y=ARRcookies.substr(ARRcookies.indexOf("=")+1);
x=x.replace(/^\s+|\s+$/g,"");
if (x==c_name)
{
return unescape(y);
}
}
return "";
}

function strpos (haystack, needle, offset)
{
var i = (haystack + "").indexOf(needle, (offset || 0));
return i === -1 ? false : i;
}

function insertLinkParam(url, parameterName, parameterValue)
{
replaceDuplicates = true;

if(url.indexOf("#") > 0)
{
var cl = url.indexOf("#");
urlhash = url.substring(url.indexOf("#"),url.length);
}
else
{
urlhash = "";
cl = url.length;
}

sourceUrl = url.substring(0,cl);

var urlParts = sourceUrl.split("?");
var newQueryString = "";

if(urlParts.length > 1)
{
var parameters = urlParts[1].split("&");
for(var i = 0; i < parameters.length; i++)
{
var parameterParts = parameters.split("=");
if(!(replaceDuplicates && parameterParts[0] == parameterName))
{
if (newQueryString == "") {
newQueryString = "?";
}
else {
newQueryString += "&";
}
newQueryString += parameterParts[0] + "=" + parameterParts[1];
}
}
}

if(newQueryString == "") {
newQueryString = "?";
}
else {
newQueryString += "&";
}

newQueryString += parameterName + "=" + parameterValue;
return urlParts[0] + newQueryString + urlhash;
}

function repl_all_en_links()
{
var re = new RegExp(/(\b(https?):\/\/(www\.)?site\.com(.*?"))/im);
var aEls = document.getElementsByTagName("a");
var used_member_id = '';

if(last_member_id == cookie_member_id) {
used_member_id = last_member_id;
}
else if(last_member_id != cookie_member_id && last_member_id != "") {
used_member_id = last_member_id;
}
else if(last_member_id != cookie_member_id && cookie_member_id != "") {
used_member_id = cookie_member_id;
}
else {
return;
}

for(var i = 0, aEl; aEl = aEls; i++)
{
if (re.test(aEl.href+'"')) {
aEl.href = insertLinkParam(aEl.href, "id", used_member_id)
}
else if(strpos(aEl.href, "site.com")) {
//alert(aEl.href);
}
}
}
</script>

Яростный Меч 09.09.2013 14:20

куки можно сохранять только для того домена, на котором выполняется код. ну или для поддоменов.

т.е. код на сайте www.test.com к кукам сайта site.com отношения не имеет вообще.

vignesgangboard 09.11.2016 09:06

Cookies are small files which are stored on a user's computer. They are designed to hold a modest amount of data specific to a particular client and website, and can be accessed either by the web server or the client computer.


Informatica Training
Online Informatica Training
Hadoop Training in Chennai

Deff 10.11.2016 08:43

Цитата:

Как сделать так чтобы человек заходил через сервис e-autopay.com по партнёрской ссылке http://botinok.partnerka.e-autopay.com на сайт www.test.com а Id- botinok сохранялось в куках для домена site.com
:( Ничо не понятно
а). Приведите последовательность переходов
1. сайт такой-то, ссылка такая-то
2. сайт такой-то, ссылка такая-то
3. сайт такой-то, ссылка такая-то
....
=============================
Пометьте сайты на которых возможна установка своих кодов, ибо если свои коды не возможны хоть на каком-то этапе - с помощью js вряд ли реализуемо...


Часовой пояс GMT +3, время: 14:12.