Плавающий блок с возможностью закрытия , реально?

12
I
На сайте с 19.12.2007
Offline
106
#11
RoMaN444Ik:

Короче. я хочу сделать так:
Когда пользователь заходит на сайт, он видит рекламу, если она ему не нравится, то он нажимает "скрыть рекламу" и тут страница перезагружается и реклама пропадает.
Изнутри: когда чел нажимает на кнопочку, то ему ставятся куки говорящие php скрипту зашитому в шаблон о том что нужно выводить уже не рекламу а просто кнопочку, при нажатии на которую эти куки(блокирующие рекламу) удаляются и соответственно рекламный блок появляется... Вот как-то так :)

Что-то я ничего не понимаю. Вы хотите предложить посетителям добровольно включать рекламу, удаляя соответствующие куки? Достаточно пагубно считать, что кругом "просточки".

Вот моё решение в коде. Примитивно, но разобраться легко.

<?

if (!isset ($_COOKIE['show_ads'])) {
setcookie ("show_ads", "yes", time()+3600*24); //сутки. Можно и час оставить.
echo "Код баннера. Там даже может быть кнопочка Закрыть . И перезагружать ничего не нужно";
}
else{
//Курим или делаем ещё что-то
}
?>
Закрытая партнёрка по Push трафику. (https://pushsender.pro) Инвайт: NR9LSZ89
RM
На сайте с 21.06.2011
Offline
77
#12
Intdig:
Что-то я ничего не понимаю. Вы хотите предложить посетителям добровольно включать рекламу, удаляя соответствующие куки? Достаточно пагубно считать, что кругом "просточки".

Вот моё решение в коде. Примитивно, но разобраться легко.
<?

if (!isset ($_COOKIE['show_ads'])) {
setcookie ("show_ads", "yes", time()+3600*24); //сутки. Можно и час оставить.
echo "Код баннера. Там даже может быть кнопочка Закрыть . И перезагружать ничего не нужно";
}
else{
//Курим или делаем ещё что-то
}
?>

Судя по вашему примеру куки выставляются сразу после показа баннера? Ну да ладн, это хоть что-то :) Кстати про 1 час вы верно поставили, сделаю именно так. Спасибо. Лови +

RoMaN444Ik добавил 21.06.2011 в 14:22

Блин, а как тут плюсы ставить?

RoMaN444Ik добавил 21.06.2011 в 14:22

А как будет на php - удалить куку?

I
На сайте с 19.12.2007
Offline
106
#13

Плюсов тут нет. Только репа. Но мой акк плюсовать всё равно нельзя :) Да и по барабану мне на циферки :)

По поводу удаления.

setcookie ("show_ads", "", time() - 3600);

Пустое значение и время жизни - час назад от текущего.

А вообще - вот для почитать две ссылки:

http://www.php.su/functions/?setcookie

http://www.php.su/phphttp/?cookies

RM
На сайте с 21.06.2011
Offline
77
#14
Intdig:
Плюсов тут нет. Только репа. Но мой акк плюсовать всё равно нельзя :) Да и по барабану мне на циферки :)

По поводу удаления.
setcookie ("show_ads", "", time() - 3600);

Пустое значение и время жизни - час назад от текущего.


А вообще - вот для почитать две ссылки:
http://www.php.su/functions/?setcookie
http://www.php.su/phphttp/?cookies

Спасибо, буду читать. Вот еще проблемка нарисовалась - пишет что в 4 строке ошибка синтаксиса. Че тока не пробовал, даже код в одну строку вытягивал... не помогает

Вот сама ошибка:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /тут путь до моей папки/engine/modules/fixed-teaser.php on line 4
I
На сайте с 19.12.2007
Offline
106
#15

Покажи, что у тебя прописано в fixed-teaser.php

RM
На сайте с 21.06.2011
Offline
77
#16
Intdig:
Покажи, что у тебя прописано в fixed-teaser.php

<? 

if (!isset ($_COOKIE['show_ads'])) {
setcookie ("show_ads", "yes", time()+3600*1); //сутки. Можно и час оставить.
echo "<style type="text/css">#teaserblock{position:fixed;left:5px;color:#fff;top:10%;height:480px;width:125px}</style><div id='teaserblock'><script type="text/javascript">teasernet_blockid = 267929;teasernet_padid = 102234;</script><script type="text/javascript" src="http://lavantat.com/javascript/0RtkDktwi"></script></div>";
}
else{
//Курим или делаем ещё что-то
}
?>

Кстати, на месте "Курим или делаем еще что-то" уместно будет поставить:

echo "";

Т.е. просто пустое место на вывод

I
На сайте с 19.12.2007
Offline
106
#17

Всего-то нужно экранировать кавычки. Почитать можно где угодно. Например.

В твоём случае:

echo '<style type="text/css">#teaserblock{position:fixed;left:5px;color:#fff;top:10%;height:480px;width:125px}</style><div id=\'teaserblock\'><script type="text/javascript">teasernet_blockid = 267929;teasernet_padid = 102234;</script><script type="text/javascript" src="http://lavantat.com/javascript/0RtkDktwi"></script></div>';

А что касательно "курим" - я просто закомментировал строку. Конечно там можно выводить другой блок.

RM
На сайте с 21.06.2011
Offline
77
#18
Intdig:
Всего-то нужно экранировать кавычки. Почитать можно где угодно. Например.

В твоём случае:

echo '<style type="text/css">#teaserblock{position:fixed;left:5px;color:#fff;top:10%;height:480px;width:125px}</style><div id=\'teaserblock\'><script type="text/javascript">teasernet_blockid = 267929;teasernet_padid = 102234;</script><script type="text/javascript" src="http://lavantat.com/javascript/0RtkDktwi"></script></div>';

А что касательно "курим" - я просто закомментировал строку. Конечно там можно выводить другой блок.

Спасибо за ответ, я вот уже думал, что там это все из-за кавычек... Короче завтра установлю, протестирую, у нас уже вечер, я пошел спать! :)

RO
На сайте с 15.08.2010
Offline
36
#19
RoMaN444Ik:
Вот еще проблемка нарисовалась

А вот еще проблемка - какое отношение имеет данный топик к партнерским программам

Модеры убейте топик или перенесите

Rustov-Oleg добавил 21.06.2011 в 19:34

Intdig может в аське его научишь

Сlick-Under сливаю Сюда по 5$ за 1К (http://rutraff.org/?ref=982)
RM
На сайте с 21.06.2011
Offline
77
#20
Rustov-Oleg:
А вот еще проблемка - какое отношение имеет данный топик к партнерским программам

Модеры убейте топик или перенесите

Rustov-Oleg добавил 21.06.2011 в 19:34
Intdig может в аське его научишь

По-первых, это прямой метод увеличить доход с партнерок - размещение плаваюшего баннера,

Во-вторых, ты тут как раз нарушаешь правила(оффтоп), что ТЫ написал по теме?

В-третьих, уже разобрались мы с ним!

RoMaN444Ik добавил 22.06.2011 в 06:47

Intdig, Ну так, то все работает, только заметил одну траблу - в Google Chrome кука не записывается, а Firefox все ок... не знаешь в чем может быть проблема?

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий