Сайтостроительство


         

Анализ посетителей веб-сайта - часть 3


pDB = mysql_init(NULL);

if(!pDB) { printError(mysql_error(pDB)); return -1; }

//получаем значения CGI-параметров, //сформированных javascript'ом, приведенным выше GetParamByName("id", id); GetParamByName("r", ref); GetParamByName("n", browser); GetParamByName("v", version); GetParamByName("c", cookie); GetParamByName("f", frame); GetParamByName("j", java); GetParamByName("x", x); GetParamByName("y", y); GetParamByName("d", depth); GetParamByName("js", js); GetParamByName("o", os);

//соединяемся с базой if( !mysql_real_connect(pDB, NULL, "counter", "хххххх", "counter", 0, NULL, 0) ) { printError("mysql_real_connect: %s\n", mysql_error(pDB)); goto LABEL_END; }

//получаем адрес сайта, на который пришел пользователь //эти адреса будут различаться в случае, если ваш счетчик //установлен на несколько ваших веб-сайтов GetServer(getenv("HTTP_REFERER"), spage); //получаем адрес страницы сайта, на которую пришел пользователь GetPage(getenv("HTTP_REFERER"), ppage);

//получаем адрес сайта, с которого пришел пользователь GetServer(*ref, sref); //получаем адрес страницы сайта, с которой пришел пользователь GetPage(*ref, pref);

//формируем строку SQL-запроса //обратите внимание, что мы используем функцию snprintf //застраховавшись от переполнения буфера snprintf(str, 4096, "INSERT INTO hit ( owner_id, shref, href, browser, version, \ cookie, frame, java, x, y, depth, js, os, ip, spage, page, it_date) VALUES (\ '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', \ '%s', '%s', '%s', '%s', NOW())", *id, *sref, *pref, *browser, *version, *cookie, *frame, *java, *x, *y, *depth, *js, *os, getenv("REMOTE_ADDR"), *spage, *ppage);

//вставляем новую запись в таблицу hit if( mysql_query(pDB, str) ) { printError("mysql_query: SQL=%s<br> %s\n", str, mysql_error(pDB)); goto LABEL_END; }




Содержание  Назад  Вперед