Просматриваем раздел from Январь, 2008

Хотите звезд? Будет вам!

Столкнулся с задачей реализации голосования звездочками с помощью JavaScript и jQuery библиотекой. Первым же делом попробовал найти готовую плюшку, но к сожалению не нашел реализации этой достаточно популярной идеи. Даже библиотека Interface.js почему-то не предлагает такой возможности.

Единственное, что удалось найти - реагилизацию данного голосования под библиотеку Prototype в плагине Starbox, но как показала практика использование jQuery и Prototype в одном проекте достаточно сильно его отягощают, что, естественно, крайне нежелательно. Хотя плагин и позволяет настроить голосование любым образом под себя, с кучей настроек и уже готовыми функциями обработки, от этого варианта все же пришлось избавиться и написать собственный скрипт голосования.

Файл index.php:

   echo '<h2 class="title">Голосование</h2><br>

       <div id="rate_div" class="rate_div"></div>

    <script language="javascript" type="text/javascript">
     function select_star($star)
     {
      for($i=$star+1;$i<10;$i++)
                         jQuery("img#star"+$i).attr("src","/images/star2.gif");

      for($i=0;$i<$star+1;$i++)
                         jQuery("img#star"+$i).attr("src","/images/star1.gif");
     }

     function set_star($mark)
     {
      for($i=Math.round($mark/10);$i<10;$i++)
                         jQuery("img#star"+$i).attr("src","/images/star2.gif");

      for($i=0;$i<Math.round($mark/10);$i++)
                         jQuery("img#star"+$i).attr("src","/images/star1.gif");
     }

     function submit_vote($vote)
     {
      jQuery.post("/scripts/vote.php",
        { id: '.$vars['id'].', mark: $vote },
        function(data){
           set_star(data);
        }
      );

                        for($i=0;$i<10;$i++)
                        {
                          jQuery("img#star"+$i).attr("onmouseover","").attr("onmouseout","").attr("onclick","");
                        }
     }

     for($i=0;$i<10;$i++)
                jQuery("div#rate_div").append("<img src=\"/images/star2.gif\" hspace=\"1\" id=\"star"+$i+"\" onmouseover=\"select_star("+$i+")\" onmouseout=\"set_star(34);\" onclick=\"submit_vote("+(($i+1)*10)+");\">");

                    set_star('.$vars['mark'].');
      </script>
    ';

Где $vars['mark'] - оценка текущего элемента для голосования, $vars['id'] - id для обработки результаточ текущего элемента для голосования.

Файл обработчик голосования vote.php:

<?
 include("../connection.php");

 $vote=explode("|",mysql_result(mysql_query("select rate from goods where id=".$_POST['id']),0,0));
 $vote[0]=round(($vote[0]*$vote[1]+$_POST['mark'])/($vote[1]+1));
    mysql_query("update goods set rate='".$vote[0]."|".($vote[1]+1)."' where id=".$_POST['id']);

 echo $vote[0];
?>

Где голоса хранятся в виде "оценка0-100|количество голосовавших" в базе данных. Все остальные надстройки каждый уже сможет дописать для себя сам. Примерно вот так это может выглядеть у вас:

Синонимизация. Мы ее теряем :)

Posted Опубликовано cross в Разработка сайтов     Comments 3 комментов
Янв
26

Есть новый сайт (скажу его лишь тем кто хочет поучавствовать в создании синонимайзера), который я хочу попробовать протолкнуть. Единственное чего ему сейчас не хватает - уникального контента. А так как я синонимайзер еще ранее хотел написать, под другой сайт, разработке которого я наконец-то сейчас могу уделить внимание, так как закончилась сессия и мое время снова со мной, я решил попробовать сделать его сейчас.

Все казалось достаточно простым для меня. Первый взгляд на технологию синонимазации текста я описал в одном из предыдущих постов. Сегодня же все таки закончил делать первоначальную базу и получил:

  • 15 тысяч разных слов
  • связи и синонимы на каждое из этих слов

Выборка для синонимов для любого слова:

select t1.word, t3.word from words as t1
right join sinon as t2 on t2.word_id=t1.id
left join words as t3 on t3.id=t2.sinon_id
where t1.word='слово'

порядка 0.05 секунд даже на моем компе, это значит, что можно увеличить количество слов на поряд и скорость выборки не значительно увеличится. Это очень хорошо.

С другой стороны, я решил попробовать заменять каждое прилагательное слово в небольшом абзаце:

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

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

  • База должна быть оптимизированна и дополнена данными о суфиксах, окончаниях и корне слов для возможности найти это слово в тексте. Сделать это крайне сложно.
  • Дополнить синонимайзер функцией перемешивания предложений.
  • Для качественной уникализации текста - лучше сделать синонимайзер в полуавтоматическом режиме.

Продолжаю работать в этом направлении :)

А также - раздобыл все таки AllSubmitter 4.7 и активно начинаю его юзать для получения бэков на свои проекты. $0.15 с сателлита PR1 тИЦ10 в день сейчас, подожду индексации ссылок, после автоматического рега по базе в несколько тысяц каталогов - примерно 400+ успешных ответных мейлов.

CTRL+C устраивает конкурс аля "Наша Раша", а вот блоговар почему-то помер, хотя отличный источник трафика и ссылок был... iThorn рассказывает секреты попадания в топы социалки Toodoo, а Роман Настенко расскажет все секреты секса в Интернете. s13 наталкивает и мотивирует всеже на создание синонимайзера, как бы сложно это не было...

План-минимум веб-мастера, какой он?

В последнее время именно этот вопрос волнует меня более все. Очередной Ап Яндекса поднял движение и каждый блоггер уже успел порадоваться или разочароваться. У меня же тИЦ пока остался стабильным - 100, а место в рейтинге блогов 440, что очень радует. Статистика Маула:

  1. 2008.01.23 тИЦ: 1000 pr: 4
  2. 2008.01.12 тИЦ: 600 pr: 4
  3. 2007.11.26 тИЦ: 375 pr: 4
  4. 2007.10.10 тИЦ: 375 pr: 0
  5. 2007.08.29 тИЦ: 180 pr: 0

свалила на повал и заставила меня задуматься, сколько же проектов нужно иметь веб-мастеру, чтобы быть довольным(как Spryt, например) своим пассивным заработком.

Ситуация довольно проста, сейчас вплотную хочу понять как же все таки зарабатывают блоггеры в своем большинстве. Уже пытался поднять этот вопрос и разобраться - как же зарабатывают 80% блоггеров?

Блог поднять удалось, даже вполне удовлетворен результатом, но заработать с этого ничего более $100-150 в месяц для меня на данный момент нереально. Показатели блога(PR3, тИЦ100) пока достаточно маленькие и лишь подняв их наверное можно будет поднять стоимость раза в полтора. Но ведь этого же мало и основная прибыль заключается в рекламировании GlavMed`a.

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

Плюсы продвижения одного проекта:

  1. Авторитетность и доверие
  2. Крупные заказы
  3. Больше шансов на сотрудничество

Минусы:

  1. Риск провала и потери всего
  2. Большие затраты по продвижению сайта

Плюсы продвижения нескольких проектов:

  1. Гибкость в продвижении, зачет различных результатов
  2. Возможность переключиться на один проект
  3. Различные способы дохода

Минусы:

  1. Значительные затраты времени и ресурсов на продвижение сайтов

Для примера, ресурсы: Kinofilms.com.ua и oKino.org. Если первый является самостоятельным проектом, без сателлитов, дополнительных сайтов, каталогов и никаких других дополнительных проектов для продвижения, то второй просто перенасыщен сопутствующими проектами и ресурсами для ссылочного продвижения и отдельного заработка. Проецируя эти проекты на возможности одного человека... правильно ли развивать такой проект или заниматься продвижением нескольких, но более маленьких?

Donation Bar

Order Links

Топ комментаторов

  • No commentators.