Сервис Интернет Объявлений

 
02
Октябрь
2012

Ограничение GET-запросов




В ходе моих экспериментов с PHP обнаружилась интересная особенность-ограничение гет-запросов.

При попытке передать в GET-запросе строку ‘update mysql database anyword‘ сервер выдает 404 ошибку.

При общении с админами хостинга выяснилось, что это у них такая защита от возможных хакеров. Разумеется, это ограничение установлено не везде, но принять к сведению это нужно. Чтобы не ломать голову полдня в поисках ошибки в коде :(

30
Сентябрь
2012

Алгоритм поиска нечетких совпадений в PHP

Нечеткий поиск фраз в PHPВсем привет!
Сегодня речь пойдет о нечетких совпадениях в PHP.
В сети можно найти достаточно примеров поиска отдельных слов и сравнения целых текстов.
Но моя задача выглядит так: определить, принадлежит ли текст одной из Веб-страниц.
Или, наоборот: имеется Веб-страница и несколько текстов. Определить, какой текст расположен на этой Веб странице.

Самое неприятное: текст может иметь различные словоформы, длину и дополнительные слова.

Где это нужно? Да везде. В частности, при поиске возможного плагиата, при генерации Мета-тегов и т.д.

Таким образом, мы имеем дело с двумя задачами.

  • 1. Из множества текстов найти такие, которые могут содержать искомый фрагмент;
  • 2. Выбрать тот текст, который действительно с большой вероятностью содержит искомый фрагмент текста.

Я не буду приводить здесь PHP-код. Но дам наводку, как поступать. Учтите, в РНР я недавно.

Первым делом подготавливаем две строковые переменные: одну с искомым тестом, вторую — с текстом, где нужно будет искать. Удаляем из этих строк все символы, разметку и пробелы. Т.е. оставляем две строки, состоящие только из букв и цифр русского и английского языков.

Затем ограничиваем поиск до размеров искомой строки и прогоняем циклом по всему тексту. Используем встроенную функцию levenshtein() для сравнения. Выбираем тот фрагмент, где levenshtein() дает наименьшее число. Это число показывает количество изменений, необходимых сделать для преобразования одного текста в другой.
Заносим выбранный фрагмент (длиною в искомую строку) в отдельную переменную или массив.

Имея много текстов, и упаковав все это в один большой цикл, мы сможем получить несколько значений levenshtein(). Где значение меньше — тот текст и ближе к искомому. Но ,согласитесь, не факт, что текст окажется совпадающим.

Для окончательной проверки текстов на реальную похожесть воспользуемся PHP-функцией similar_text(), которая и покажет нам в процентах сходство текстов.
В зависимости от специфики текста, можно сказать, что тексты со схожестью 80% и выше можно считать одинаковыми.

При реализации этого алгоритма нужно учитывать, что levenshtein() не работает со строками длиннее 255 символов. Так что, продумайте этот момент и разбейте на подстроки, если это нужно.
Также учтите, что перебор может занять много времени. Сократить время перебора поможет увеличение шага сравнения строк. Но здесь Вы приносите в жертву точность.
Хотя, для нечеткого поиска и точность будет нечеткой.

П.С. А ВЫ знали, что дорожные блокираторы могут быть установлены на любой дороге и смогут задержать даже военную технику?

25
Сентябрь
2012

JotForm — создание HTML-форм, конструктор функциональных форм

Недавно возникла потребность быстро создать функциональную и привлекательную форму на сайт.
Разумеется, руками рисовать ее было влом. Поэтому начал рыть дебри Интернета в поисках чего-то съедобного, функционального и с внятной поддержкой. И нашел сервис JotForm.
Интернфейс там очень даже интуитивно понятный. Drag-n-Drop, группы элементов, возможность редактирования как формы вцелом, так и свойств отдельных составляющих.

Порадовала возможность встраивания через iframe и при помощи HTML-кода.
Встраивание полезно для быстрой вставки формы на сайт без необходимости проводить существенные правки.
Если же Вы хотите пошаманить, перекрасить, подвигать, изменить способ отправки и количество данных — вытаскивайте форму в Dreamweaver и редактируйте в свое удовольствие.
Форма использует три внешних файла: один скриптовый и два ЦСС.
Но они легко скачиваются и размещаются локально, без необходимости подгрузки.
Кроме того, локально Вы можете подправлять как CSS, так и JS-файлы.

Отдельно следует отметить поддержку. JotForm имеет очень даже живой форум.
Например, я там задавал вопрос об отключении автоматической прокрутке при развороте Form Collapse. В течение суток ответ был дан!
Впрочем, я и так до него докопался, обычным редактированием Джаваскрипта.

Кстати, на сайте, где Вы можете скачать новый фильмец Банда Неудачников http://onlymult.com/39-piraty-banda-neudachnikov.html также обратите внимание на формы ввода информации. Возможно, Вы найдете знакомые элементы?

А для удобного просмотра этого фильма и других программ очень рекомендую приобрести удобный кухонный диван в Минске. Если Вы хотите что-то уникальное под конкретную планировку — сделайте заказ и все будет изготовлено всрок.

10
Сентябрь
2012

Выводим имя юзера и прочую инфу на странице Вордпресса

Сначала ставим плагин, включающий РНР в Вордпрессе. Например, grimp-php

Затем добавляем этот код:

<?php global $current_user;
      get_currentuserinfo();

      echo 'Username: ' . $current_user->user_login . "\n";
      echo 'User email: ' . $current_user->user_email . "\n";
      echo 'User first name: ' . $current_user->user_firstname . "\n";
      echo 'User last name: ' . $current_user->user_lastname . "\n";
      echo 'User display name: ' . $current_user->display_name . "\n";
      echo 'User ID: ' . $current_user->ID . "\n";
?>

и радуемся!

31
Август
2012

Набор в школу танцев заслуженной артистки России Ирины Сурневой

Вот такой рекламный плакатик в преддверии нового набора по направлениям: Модерн, Контемпорари, Классический танец, Акробатика, Джаз.
Приводите Ваших деток. Качество обучения гарантируется! :)
Школа танцев в Харькове. Школа танцев Ирины Сурневой

31
Август
2012

Duracell — едкая щелочь.

Потекла батарейка в фотоааппаратеТоварищи!
Если Вы используете пальчиковые батарейки вместо аккумуляторов для экономии или удобства — помните: закончится это может весьма плачевно.
Например, как у меня.

Одна из четырех батареек Duracell Turbo (с индикатором оставшегося заряда) тупо потекла. Причем потекла именно в фотоаппарате.

Результат: Повреждение внутренних частей (не горит дисплей), повреждение оптики (линза стала матовой), наружные подтеки.
Фотоаппарат более не пригоден к работе.

В ремонт не обращался. Но, судя по всему, выгоднее будет купить новый.

27
Август
2012

Masterpiece of Support. SideOffer is here

SideOffer-Wordpress-Plugin

Today I’m gonna tell an interesting story about problems and their solving. I’m gonna tell you the story how SideOffer WordPress Plugin became v.1.0.2.

SideOffer is a useful plugin with very clear settings. It can hide extra information about your site behind page area, leaving only counterfoil. Click on this counterfoil shows all hidden information through the sliding of extra panel.

Once I installed SideOffer and became confused. This plugin didn’t work with eiter my topic or my hosting or with other plugins. I could only see it in action in my admin panel. As I supposed this plugin could be a real thing, I wrote a letter to David Benedetti, the author of SideOffer.

I was very surprised to get an aswer half-an-our later. Dave asked me to provide all necessary information so he could analyze that stuff. I did it.

Dave decided that he did forget to include jquery to load on the front end. …and sent me new 1.0.2 version of SideOffer!

But even tht version failed to work on my site. Dave didn’t give up. During our comunication he noticed additional bug. This time it was with my WordPress Template:
Uncaught TypeError: Object [object Object] has no method ‘placeholder’

So i began to dig. During my experiments I found i final reason. I translated one of widgets and entered Cyrillic symbols in its PHP-file. this caused problems with overall template work. I just resaved that fle in other encoding using Notepad++

P.S. I promised Dave to write a review about plugin. But I wrote this story about excellent free support, about collaboration and willing to help to end-user. So everybody can suppose it is a Recommendation letter for David Benedetti.
If somebody has questions — use Facebook to contact me.

Regards, Oleksandr Demchenko

19
Август
2012

Удаляем тайтл с главной страницы в блоге WordPress

Думаю, комментарии излишни
заряжаем в page.php такой вот кодик вокруг кода заголовка:

<?php if (is_front_page()) : ?>

<?php else : ?>
<h1 id="post-<?php the_ID(); ?>"><?php the_title(); ?></h1>
<?php endif; ?>
18
Август
2012

Совпадение?

Смотрю картинки голубей в инете.
В этот момент прилетает голубь на окно и пытается усесться на подоконнике.
Никогда ко мне голуби не прилетали.

15
Август
2012

PHP и кириллица

Как, оказывается, много проблем может возникнуть при работе с кириллицей под час программирования на PHP
И как много можно решить сменой кодировки на Convert to UTF8 without BOM в Notepad++

Это я для себя написал.
Как, впрочем, и весь этот блог :)

1 349 просмотров