Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   [решено] Создание баннерной сети (http://forum.oszone.net/showthread.php?t=121904)

Artem-Samsung 04-11-2008 00:30 942300

Создание баннерной сети
 
Задача: создать и развивать самую простую баннерную систему (на php).
Посоветуйте в какую сторону развиваться. Какие то может опенсорсные скрипты.
Нашел что то такое: http://www.openx.org/ . Есть какие то мнения по этому скипту?

tolbol 04-11-2008 20:34 942992

Цитата:

Цитата Artem-Samsung
Нашел что то такое: http://www.openx.org/ . Есть какие то мнения по этому скипту? »

Вот это и нужно использовать хотя и простой то её не назовёшь, на данный момент одна из самых лучших бесплатных баннерных систем с постоянным усовершенствованием в лучшую сторону. Её кстати некоторое время у авторов выкупили за приличные баксы, кажется лимона полтора и соответственно вкладываться в дальнейшем будут по полной.

Artem-Samsung 05-11-2008 18:47 943981

Цитата:

Цитата tolbol
за приличные баксы »

Но свободным это ПО и по прежнему будет оставаться?

tolbol 06-11-2008 08:49 944599

Цитата:

Цитата Artem-Samsung
Но свободным это ПО и по прежнему будет оставаться? »

Конечно, ведь изначально эта система разрабатывалась как Open Source и популярность пришла благодаря этому, так что менять там что то вряд ли будут, а зарабатывают они кажется на показах рекламы сторонних баннерных систем.

Artem-Samsung 24-01-2009 23:28 1018342

Друзья, воощем хочю попробовать создать самую простенькую баннеросеть между тремя сайтами.

Есть 10 баннеров, которые случайным образом отображаются на этих сайтах.
Ссылки и путь к изображениям баннеров в БД баннерной сети - (независимого сервера)

в эту же БД накапливается статистика нажатий, показов баннеров.

Подскажите пожалуйста.
Как такое сделать на одном сайте я еще понимаю, но как на разных. т.е. каким образом они считывать с моей БД будут и записывать?

На сервере: Apache2, MySQL

Что почитать, подучить?

tolbol 25-01-2009 08:29 1018546

Интересный конечно вопрос, но не до конца понятно, что именно требуется?
Можно более детально изложить суть вопроса.

Чем не устраивает предложенная выше система?

Artem-Samsung 25-01-2009 14:30 1018807

Система сильно громоздкая да и не очень мне удобная, в связи с тем, что хочю интегрировать в тематический веб-сайт.

Суть пока заключается в том, что хочю написать баннерную систему, вот только как реализовать такие функции, как обрабатывание моих sql запросов на других сайтах я не знаю.

На своем я в php пишу логин и пароль к БД, а если давать код баннера другому веб-мастеру к размещению на его сайте, я так догадываюсь что пароль и логин не очень было бы хорошо давать ;) ну для того что бы фиксировалось к-во показов.

Не встречался с задачей, но в данный момент для меня актуальна

Coutty 25-01-2009 15:22 1018866

Artem-Samsung, так они пусть вставляют картинку в таком виде:
HTML код:

<img src='http://site.ru/banner.php?0.2356765465' />
где после вопроса - рандомное число.
Ваш скрипт banner.php читает информацию о ссылающейся странице, ищет нужную картинку и возвращает её после заголовка image/jpeg, например.

tolbol 25-01-2009 15:53 1018897

Я так понял, нужно чтобы для конкретного сайта при показе баннера происходил учёт его статистики.
Получается, что каждый отдельный сайт нужно как то идентифицировать среди других.

Совет Coutty простой и конечно же удобный, но анализ информации о ссылающейся странице на мой взгляд более проблемный чем анализ конкретного идентификатора сайта, но смысл тот же.

Цитата:

Цитата Artem-Samsung
Система сильно громоздкая да и не очень мне удобная »

Громоздкая потому что ориентирована на профессиональное использование, а вот насчёт не удобности я бы с вами поспорил, если хорошенько разобраться, что собственно говоря не сложно, то в этой системе есть всё что вам нужно.
К примеру, если необходимо разделить сайты как у вас, то просто создаётся определённое количество площадок, скажем клиент один и это вы, тогда в таком случае у каждого сайта будет свой аккаунт с логином и паролем и соответственно раздельная статистика для каждого сайта.
Вам просто не нужно будет изобретать велосипед второй раз тратя на это своё время, а где то нервы.

Сам пользуюсь openX и меня там всё устраивает, просто я разобрался детально, как эта система работает, что она может, а что нет.

Artem-Samsung 30-01-2009 02:20 1024054

Цитата:

Цитата Coutty
Artem-Samsung, так они пусть вставляют картинку в таком виде: »

Спасибо, с картинкой представляю.
А как же ссылаться будем именно на тот сайт, который на картинке высвечивает?

tolbol 30-01-2009 06:55 1024114

Цитата:

Цитата Artem-Samsung
А как же ссылаться будем именно на тот сайт, который на картинке высвечивает? »

Вот про то речь и идёт, что, если рассматривать пошагово создание своей пусть и крохотной системы, получается изобретение велосипеда повторно, только уже нет гарантии, что собственный велик поедет так же хорошо как тот, который сделан профессионалами.

Повторюсь, в openX есть всё или почти всё что нужно для таких целей, даже свой API для расширения и подгонки под нужды конкретного сайта.
Нужно только захотеть разобраться в этой системе.

Artem-Samsung 30-01-2009 14:03 1024444

tolbol, :) Нужно будет как то доскональней разобраться. Можно будет у Вас консультироваться?

Но мне все равно интересно разобраться, как реализуется пусть сдаже самая простая баннерная система.

tolbol 30-01-2009 17:47 1024693

Цитата:

Цитата Artem-Samsung
Можно будет у Вас консультироваться? »

:) Спрашивайте, чем смогу, помогу.

Artem-Samsung 30-01-2009 21:01 1024847

Таки еще ломаю голову над алгоритмом.
Значит есть у нас баннер на php. вопрос состоит в ссылке.

Ход мысли такой:

id сайта на котором размещаем - 3212

Если мы сгенерируем большое случайное число "56757542453632323" при помощи JavaScript,
оно будет отображаться и в ссылке, и в баннере.

Предположим так:
<a href="http://my.site.com/b.php?i=56757542453632323">
<img src="http://my.site.com/banner.jpg?i=56757542453632323&s=3212" />
</a>

Скрипт, который будет по адресу banner.jpg считает ячейку в массиве i нашего так скажем get массива - 56757542453632323
И добавит это значение в БД в ячейку таблицы, с полем нашего сайта, который отобразится на картинке banner.jpg.

А уже когда человек нажмет на баннер, то скрипт b.php даст определит из БД какому сайту соотсветсвует идинтификатор и переадресует на нужныую нам страницу =)

Верно мыслю?

Только нагрузка на БД будет большая. или оправдано большая? по другому никак?

Получается 1. Записываем в БД. 2.Считываем с БД 3. Удаляем с БД

Coutty 30-01-2009 23:16 1024962

А зачем записывать в БД? У баннеродателя, предположим, 3 картинки на 1 ссылку. Мы показываем произвольную из этих трёх. Когда человек жмёт на ссылку (туда тоже надо подставить этот &s=3212), скрипт смотрит, какой ссылке соответствует это число s. Не надо ничего записывать и следить, чтобы вовремя удалялось.

Artem-Samsung 30-01-2009 23:43 1024982

Так а ссылки что бы менялись? Мне это собственно главное и ставит в трудное положение.

Igor_I 31-01-2009 01:17 1025051

Coutty, а как считать показы баннеров?

Coutty 31-01-2009 10:22 1025179

Будем жевать.
Код:

<a href="http://my.site.com/b.php?i=56757542453632323&s=3212">
<img src="http://my.site.com/banner.jpg?i=56757542453632323&s=3212" />
</a>

В БД имеется запись под номером 3212, к которой привязана одна ссылка и, возможно, несколько картинок. Какие картинки показывать для этой ссылки - не важно, раз клиент их несколько привязал, поэтому выбираем рандомом. Картинку показали. Посетитель тыкает в баннер и переходит по ссылке b.php?... Этот скрипт смотрит в запись под номером 3212 и переадресует на нужный сайт, увеличивая счётчик.

Теперь по вопросу "как менять ссылки".
Вот имеется у вас в БД, скажем, 5000 записей. Рекламодатели ставят ваш скриптик, который это число s= будет генерировать рандомно. Предположим, в какой-то конкретный момент выбирается число 1726. В БД запись есть, поэтому никаких проблем.
Далее, если такой записи уже нет (кончилась рекламная компания). Тогда и картинку, и ссылку нужно брать под номером, ближайшим сверху к данному числу. Т.е. нет 1726, поэтому php-скрипт будет возвращать и картинку, и ссылку на запись под номером 1727 (или какая там следующая существует). Тоже нет проблем.
Проблема следующая - количество рекламодателей увеличилось свыше 5000. Скажем, их стало 20000, а какой-то сайт по-прежнему генерирует число до 5000 и таким образом не даёт показать баннеры под записями от 5 до 20 тыс.
Тогда надо сразу JS генерировать большое число s. Пусть будет в интервале до 500.000. Разумеется, соответствующего количества записей нет, но ведь количество известно ("SELECT COUNT(*) FROM banners"). Поэтому мы берём число s и делим с остатком на количество записей: $num = $s % $num_banners. Далее вопросы сводятся к предыдущим двум абзацам.

Если нужно ещё тематическое разделение и прочий таргетинг, то не изобретайте велосипед, а разберитесь лучше с готовым скриптом, предложенным выше ;)


Время: 03:08.

Время: 03:08.
© OSzone.net 2001-