Ну да, в простейшем случае можно использовать стеммер портера для выделения корней слов и сравнивать их.
Она не нужна :) Это просто пример, который я накидал на скорую руку для демонстрации работы алгоритма.---------- Добавлено 11.01.2013 в 16:47 ----------
Простите, но данный алгоритм не эффективен, т.к. при росте количества ключевых слов сложность алгоритма растёт экспоненциально. Необходимо делать наоборот, разбивать исходный текст на слова и искать наиболее длинные последовательности по словарю ключевых слов.
Вот так:
<?php$tags = array('разные', 'ключевые', 'слова');$source = 'Это текст содержащий ключевые слова разные а также слова ключевые и разные слова';$found = 0;$buf = null;foreach(explode(' ', $source) as $token) { if (in_array($token, $tags)) { $found++; $buf .= $token . ' '; } else { if ($buf) { echo '<b>' . trim($buf) . '</b> '; } $found = 0; $buf = null; echo $token . ' '; }}if ($buf) { echo '<b>' . trim($buf) . '</b>';}?>
Результат выполнения:
Это текст содержащий <b>ключевые слова разные</b> а также <b>слова ключевые</b> и <b>разные слова</b>
/* должно идти после css reset */
#content {
font-family: inherit;
padding: inherit;
margin: inherit;
}
в таком случае эти значения унаследуются из родительского элемента - вам это нужно?
Какая БД-то? MySQL?
А в HTTP_REFERER как раз лежит поисковый запрос ;)
Страница, с которой перешли на ваш сайт помещается в переменную окружения HTTP_REFERER вашим веб-сервером, поэтому на PHP это будет приблизительно так:
if (
strpos($_SERVER['HTTP_REFERER'], '//yandex.ru') !== false ||
strpos($_SERVER['HTTP_REFERER'], '//google.com') !== false
) {
echo "рекламный код";
Мешает в основном отсутствие желания заниматься маркетингом, продвижением и поддержкой полученного продукта, нежелание бросать любимое дело, на котором он специализируется и начинать организовывать компанию вокруг продукта. Каждый хочет заниматься своим делом, тем, что у него получается лучше всего. У кого-то это разработка ПО, у кого-то дизайн, а у кого-то генерация идей, привлечение денежных средств и основания компаний.
Я не путаю. Мысли не тянут на идею. Бизнес-идея это как минимум просчитанный бизнес-план на несколько лет в подтверждение возможностей осуществить задуманное.
Почему-же гуглоидам. До Facebook вполне успешно существовали уже социальные сети, тот-же MySpace. Такой "выстрел" проекта facebook - это в большей степени случайность. В поисках таких случайностей сейчас посевные инвесторы дают денег всем подряд :D---------- Добавлено 08.01.2013 в 17:09 ----------
Бизнес-ангелы вкладывают деньги в основном не в идеи а в команды. В людей, которые способны эти (и совершенно другие) идеи осуществить.
Отправил в личку, если так интересно.
Идея без реализации ничего не стоит. У всех полно идей, но нет то времени, то денег, то специалистов для их воплощения. Составляйте техническое задание, выкладывайте его и можно будет оценить, сколько по времени это получится. Затем умножите время на ставку в час и количество задействованных специалистов и получите стоимость.
P.S. Если это не игра то могу посмотреть ваше ТЗ (в личку), умею разрабатывать android приложения и серверную часть тоже.
В базах данных нет понятия "следующий" и "предыдущий" элемент. Они оперируют понятием множеств. Вы хотите расширить множество выбираемых элементов, следовательно нужно расширить условие.
Допустим, если в таблице portfolio есть столбец id, который содержит порядковый номер строки, тогда можно ориентироваться на него, чтобы получить нужный вам результат. Для этого нужно выбрать множество элементов по seourl который вам нужен и соединить его с множеством элементов по id, которые будут обеспечивать второе необходимое вам условие ("следующую или предыдущую"), что в переводе на язык SQL будет выглядеть как то так:
select p.*, p1.*, p2.* from portfolio p
left join portfolio p1 on (p1.id = p.id - 1)
left join portfolio p2 on (p2.id = p.id + 1)
where p.seourl='$myurl'
В таком случае, если id идут по порядку, без пропусков, вы получите искомые данные в одной строке. Если же id идут не по порядку, то вам придётся выполнить три отдельных запроса:
SELECT * FROM portfolio WHERE seourl='$myurl'
потом
SELECT * FROM portfolio WHERE id < $id order by id desc limit 0,1
и
SELECT * FROM portfolio WHERE id > $id order by id asc limit 0,1
где $id - это полученный идентификатор строки из первого вашего запроса.
P.S. Нельзя в запрос подставлять переменные php, как вы делаете. Это потенциальная уязвимость SQL injection.