Z
С нами с 15.05.05
Сообщения: 55188
Рейтинг: 7770
|
Добавлено: 15/04/13 в 11:46 |
выкладываю скриптец для работы в сетке
скрипт юзает MySQL для каждого уника в сетке открывает попандер (точнее клик-андер) раз в 24 часа
Код: [развернуть] | var expirationIntl = 24*60*60*1000;
function popundrShow (url) {
var popundrWindow = window.open(url, "_blank", "toolbar=yes,location=yes,directories=yes,status=yes,menubar=yes,scrollbars=yes,resizable=yes,copyhistory=yes,height=840,width=1060");
setTimeout( function() { popundrWindow.focus(); setTimeout( function() { popundrWindow.blur();}, 1);}, 10);
};
function popundrSetcookie (name, value, interval) {
var expires = new Date();
expires.setTime(expires.getTime() + interval);
document.cookie = name + '=' + value + '; expires=' + expires.toGMTString() + '; path=/';
};
function popundrGetcookie (name) {
var cookies = document.cookie.toString().split('; ');
for (var i = 0; i < cookies.length; i++) {
if (cookies[i].split('=')[0] == name) return cookies[i].split('=')[1];
};
return '0';
};
function popundrCheck () {
var cookie = popundrGetcookie('clickunder');
if ((cookie>=0&&cookie<10)) {
cookie++;
switch (cookie) {
case 1 : {
popundrShow('http://ljctv.com/boundgangbangs/boundgangbangs.htm');
break;
};
default : break;
};
popundrSetcookie('clickunder',cookie,expirationIntl);
};
};
function popundrInitialize() {
if (document.attachEvent) document.attachEvent( "onclick", popundrCheck);
else {
if (document.addEventListener) document.addEventListener( "click", popundrCheck, false);
};
};
<?php
// данные для соединения с MySQL
$db['sql_host'] = 'localhost';
$db['sql_user'] = 'user';
$db['sql_pass'] = 'pass';
$db['sql_database'] = 'databasename';
$connect = mysql_connect($db['sql_host'], $db['sql_user'], $db['sql_pass']); // Соединение с MySQL
mysql_select_db ($db['sql_database']); // Выбор базы данных
// чистка устаревших значений
mysql_query("DELETE FROM `uin` WHERE `date_ad` < '".time()."'");
// получаем ip
$ip = $_SERVER['REMOTE_ADDR'];
// проверяем зарегистрирован ли ip
$result = mysql_query("SELECT * FROM `uin` WHERE `ip` LIKE '".$ip."'");
$num_rows = mysql_num_rows($result);
if ($num_rows == 0) { // не зарегистрирован
// регистрируем ip и назначаем время показа
mysql_query ("INSERT INTO `uin` ( `ip` , `date_ad` ) VALUES ('".$ip."' , '".(time()+60*60*24)."');");
// запускаем JS
echo "popundrInitialize();";
}
mysql_close($connect); // Разрываем соединение с MySQL
?> |
хотелосьбы что бы совместно с присутствующими, тут скрипт модернизировать, для большей пробиваемости, открытия клик-андера в табе а не в новом окне, ну и добавить еще какойто функционал (например настройки, фокусы, размеры и т.д.)
|
|
|
|
+ +
WP-Master
С нами с 17.01.13
Сообщения: 1922
Рейтинг: 1123
|
Добавлено: 15/04/13 в 17:49 |
andreich: вот объясни мне нахуя регать Ip в бд?
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55188
Рейтинг: 7770
|
Добавлено: 15/04/13 в 18:18 |
Дартаньян: еще раз, я не прораммист
но как я понимаю, IP регается в БД что бы отслеживать юзера и не открввать ему клик-апндер на другом сайте, если ему он уже был показан первом сайте сетки
|
|
|
|
+ +
WP-Master
С нами с 17.01.13
Сообщения: 1922
Рейтинг: 1123
|
Добавлено: 15/04/13 в 18:57 |
andreich: написать то не проблема пиздатую админку, правда бабла сейчас 0, так-что если кто пожертвует забацаю пездатаю админку.
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55188
Рейтинг: 7770
|
Добавлено: 15/04/13 в 19:01 |
Дартаньян: скока денег ?
и что будет на выходе
что бы хотелось видеть в админке и в целом в скрипте
1. пробиваемость на первом месте
2. возможность настривать, как скрипт открывает окно, во вкладке или в новом окне броузера
3. возможность настраивать фокус
4. настраивать размер окна, наличие или отсутствие навигации и т.д.
5. статистика - сколько было открыто попандеров за 24 часа (в идеале еще бы и какие броузеры, страны и т.д.)
|
|
|
|
+ +
WP-Master
С нами с 17.01.13
Сообщения: 1922
Рейтинг: 1123
|
Добавлено: 15/04/13 в 21:04 |
andreich:
Цитата: | 2. возможность настраивать, как скрипт открывает окно, во вкладке или в новом окне броузера |
пока надо подумать как реализовать это, статистика вопрос отдельный =).
P.S.
Еслиб каждый скинул по 5-10 баксов из 20 скачавших это было бы супер).
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55188
Рейтинг: 7770
|
Добавлено: 16/04/13 в 11:32 |
Дартаньян: ну что там, подумал ?
я готов оплатить скрипт сам, скажем за 100 Wmz, с условием, что он не будет в паблике, или готов скинутся с теми кому интересно, не проблема
да и еще вопрос, почему все попандеры и т.д. реализуют на JS, а не скажем на PHP или других языках
|
|
|
|
С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538
|
Добавлено: 16/04/13 в 15:08 |
Дартаньян писал: | Еслиб каждый скинул по 5-10 баксов из 20 скачавших это было бы супер). |
Хули ты попрошайничаешь? Напиши нормальный код и дай объявление в Рекламе, кому надо тот купит.
|
|
|
|
С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538
|
Добавлено: 16/04/13 в 15:10 |
andreich писал: | почему все попандеры и т.д. реализуют на JS |
Потому что браузеры исполняют JS, а не PHP.
|
|
|
|
+ +
WP-Master
С нами с 17.01.13
Сообщения: 1922
Рейтинг: 1123
|
Добавлено: 16/04/13 в 22:55 |
Yacc: и это говорит человек, который только и умеет что умничать и писать сложный код для простых решений, браво.
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55188
Рейтинг: 7770
|
Добавлено: 17/04/13 в 08:48 |
Yacc писал: | Потому что браузеры исполняют JS, а не PHP |
я как бы немного туповат, но знаю, что PHP обрабатывается на стороне сервера, JS на стороне юзера (броузера)
но один хрен не понимаю почему нельзя написать попандер на PHP
|
|
|
|
С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538
|
Добавлено: 17/04/13 в 09:01 |
Потому что окно открывается в ответ на действие пользователя в контексте браузера, а не в контексте сервера. Не обязательно использовать JS, но это обязательно должна быть технология реализованная в браузере, флэш например.
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55188
Рейтинг: 7770
|
Добавлено: 17/04/13 в 09:28 |
Yacc: один хрен не понимаю
допустим, вот тебе сидж, ты нажимаешь на тумбу, скрипт CJ отрабатывает out и отправляет тебя либо на трейдера либо на контент, скрипто PHPшный
почему он не может допустим открыть попандер ?
|
|
|
|
С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538
|
Добавлено: 17/04/13 в 09:55 |
Потому что событие "ты нажимаешь на тумбу" происходит в контексте браузера и до того как "скрипт CJ отрабатывает out". На это событие и реагирует JS, открывающий окно.
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55188
Рейтинг: 7770
|
Добавлено: 17/04/13 в 11:20 |
Yacc: сенкс, только, что разговаривал со своим кентом прогеромм, он мне популярно обяснил, как это все работает
|
|
|
|
С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538
|
Добавлено: 17/04/13 в 11:23 |
Стесняюсь спросить может ли быть ещё популярней?
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55188
Рейтинг: 7770
|
Добавлено: 17/04/13 в 11:25 |
Дартаньян: так ты пишешь скрипт или не пишешь ?
|
|
|
|
+ +
WP-Master
С нами с 17.01.13
Сообщения: 1922
Рейтинг: 1123
|
Добавлено: 17/04/13 в 11:28 |
andreich: таки пишу ;).
|
|
|
|
Z
С нами с 15.05.05
Сообщения: 55188
Рейтинг: 7770
|
Добавлено: 17/04/13 в 11:40 |
Дартаньян: шото долго
|
|
|
|
+ +
WP-Master
С нами с 17.01.13
Сообщения: 1922
Рейтинг: 1123
|
Добавлено: 17/04/13 в 11:45 |
andreich: Оффтопик: просто дел в реале много, и 2 последних хвоста заканчиваю. Остальное скину в течении ближайших дней, без красивой статсы, поебусь и забацаю.
|
|
|
|
+ +
WP-Master
С нами с 17.01.13
Сообщения: 1922
Рейтинг: 1123
|
Добавлено: 21/05/13 в 23:17 |
Вернулся в строй продолжу работу чуть позже.
|
|
|
|
С нами с 01.06.09
Сообщения: 15
Рейтинг: -23
|
Добавлено: 07/06/13 в 12:48 |
idigishop писал: | Без гио.
Код: [развернуть] |
<script>
var puShown = false;
var PopWidth = 800;
var PopHeight = 800;
var PopFocus = 0;
var _Top = null;
function GetWindowHeight() {
var myHeight = 0;
if( typeof( _Top.window.innerHeight ) == 'number' ) {
myHeight = _Top.window.innerHeight;
} else if( _Top.document.documentElement && _Top.document.documentElement.clientHeight ) {
myHeight = _Top.document.documentElement.clientHeight;
} else if( _Top.document.body && _Top.document.body.clientHeight ) {
myHeight = _Top.document.body.clientHeight;
}
return myHeight;
}
function GetWindowWidth() {
var myWidth = 0;
if( typeof( _Top.window.innerWidth ) == 'number' ) {
myWidth = _Top.window.innerWidth;
} else if( _Top.document.documentElement && _Top.document.documentElement.clientWidth ) {
myWidth = _Top.document.documentElement.clientWidth;
} else if( _Top.document.body && _Top.document.body.clientWidth ) {
myWidth = _Top.document.body.clientWidth;
}
return myWidth;
}
function GetWindowTop() {
return (_Top.window.screenTop != undefined) ? _Top.window.screenTop : _Top.window.screenY;
}
function GetWindowLeft() {
return (_Top.window.screenLeft != undefined) ? _Top.window.screenLeft : _Top.window.screenX;
}
function doOpen(url)
{
var popURL = "about:blank"
var popID = "ad_" + Math.floor(89999999*Math.random()+10000000);
var pxLeft = 0;
var pxTop = 0;
pxLeft = (GetWindowLeft() + (GetWindowWidth() / 2) - (PopWidth / 2));
pxTop = (GetWindowTop() + (GetWindowHeight() / 2) - (PopHeight / 2));
if ( puShown == true )
{
return true;
}
var PopWin=_Top.window.open(popURL,popID,'toolbar=0,scrollbars=1,location=1,statusbar=1,menubar=0,resizable=1,top=' + pxTop + ',left=' + pxLeft + ',width=' + PopWidth + ',height=' + PopHeight);
if (PopWin)
{
puShown = true;
if (PopFocus == 0)
{
PopWin.blur();
if (navigator.userAgent.toLowerCase().indexOf("applewebkit") > -1)
{
_Top.window.blur();
_Top.window.focus();
}
}
PopWin.Init = function(e) {
with (e) {
Params = e.Params;
Main = function(){
if (typeof window.mozPaintCount != "undefined") {
var x = window.open("about:blank");
x.close();
}
var popURL = Params.PopURL;
try { opener.window.focus(); }
catch (err) { }
window.location = popURL;
}
Main();
}
};
PopWin.Params = {
PopURL: url
}
PopWin.Init(PopWin);
}
return PopWin;
}
function setCookie(name, value, time)
{
var expires = new Date();
expires.setTime( expires.getTime() + time );
document.cookie = name + '=' + value + '; path=/;' + '; expires=' + expires.toGMTString() ;
}
function getCookie(name) {
var cookies = document.cookie.toString().split('; ');
var cookie, c_name, c_value;
for (var n=0; n<cookies.length; n++) {
cookie = cookies[n].split('=');
c_name = cookie[0];
c_value = cookie[1];
if ( c_name == name ) {
return c_value;
}
}
return null;
}
function initPu()
{
_Top = self;
if (top != self)
{
try
{
if (top.document.location.toString())
_Top = top;
}
catch(err) { }
}
if ( document.attachEvent )
{
document.attachEvent( 'onclick', checkTarget );
}
else if ( document.addEventListener )
{
document.addEventListener( 'click', checkTarget, false );
}
}
function checkTarget(e)
{
if ( !getCookie('popundr') ) {
var e = e || window.event;
var win = doOpen('http://www.your_link.com');
setCookie('popundr', 1, 1*60*60*1000);
}
}
initPu();
</script>
| |
Твой скрипт глючит в Crome и Opera.
|
|
|
|