Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » PHP|Подсказка к ключевым словам

Ответить
Настройки темы
PHP|Подсказка к ключевым словам

Аватара для morgan1991

Старожил


Сообщения: 398
Благодарности: 13

Профиль | Сайт | Отправить PM | Цитировать


Здравствуйте!
Вот задумал сделать на сайте подсказку к умным словам.
Есть в базе текст, он выводится на сайте, в нём есть слова непонятные для новичков, когда пользователь наводит на некоторые слова на сайте, то видит описание к слову.
Нужно сделать функцию которая будет:
Брать в БД в первой ячейке слово (непонятное), во второй описание к этому слову.
Затем заменяет все слова в тексте на такой вид:
Код: Выделить весь код
<text title='описание' style='cursor:nw-resize'>слово</text>
Сделал такую функцию, но работает косячно...
Недостатки:
1. Заменяет текст в ссылках, между и в тегах <a href></a> <img src /> и т.д., а не должна.
2. Необходио, чтобы функция искала и заменяла не только строго совпадение из БД, но и похожие слова, т.е. с изменённым окончанием и т.д.
Например "Редактор реестра" и "редакторе реестра", должна заменять одинаково.
3. Чувствительность к регистру.
Пробовал так:
PHP код: Выделить весь код

function HelpMenuParser($txt)

{
    include 
"config.php";
    
$LinkMySqlConn = @mysql_connect($DBHost$DBLogin$DBPass) or die("err");
    @
mysql_select_db($DBName) or die("err");
    
$get_products mysql_query("SELECT * FROM `".$TablePrefix."helpmenu`");
        
$Catsk db_result_to_array($get_products);
    foreach (
$Catsk as $Catk)
    {
        
$StringSplit explode(','$Catk[1]);
        foreach (
$StringSplit as $StringSplits)
        {
            
$txt preg_replace"#(".$StringSplits.")#is""<text title='".$Catk[2]."' style='cursor:nw-resize'>$1</text>"$txt);
            
        }
    }
    return 
$txt;


И так:
PHP код: Выделить весь код

function HelpMenuParser($txt)

{
    include 
"config.php";
    
$LinkMySqlConn = @mysql_connect($DBHost$DBLogin$DBPass) or die("err");
    @
mysql_select_db($DBName) or die("err");
    
$get_products mysql_query("SELECT * FROM `".$TablePrefix."helpmenu`");
        
$Catsk db_result_to_array($get_products);
    foreach (
$Catsk as $Catk)
    {
        
$txt preg_replace"#(".$Catk[1].")#is""<text title='".$Catk[2]."' style='cursor:nw-resize'>$1</text>"$txt);    
    }
    return 
$txt;


Одинаково плохо...
Помогите пожалуйста доработать функцию...

-------
Хочу научиться писать драйвера на с++


Отправлено: 23:16, 22-03-2010

 

Deadooshka


Сообщения: 2521
Благодарности: 693

Профиль | Отправить PM | Цитировать


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

Отправлено: 15:21, 23-03-2010 | #2



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

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


Аватара для morgan1991

Старожил


Сообщения: 398
Благодарности: 13

Профиль | Сайт | Отправить PM | Цитировать


Sham, не могу скачать с данного сайта, нужно регаться, а у меня не получается....

-------
Хочу научиться писать драйвера на с++


Отправлено: 21:34, 23-03-2010 | #3



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » PHP|Подсказка к ключевым словам

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Нужна подсказка по репликации 130586 Microsoft Windows NT/2000/2003 4 17-01-2009 13:16
ограничение доступа к сайтам по ключевым словам Dj Dynamite Программное обеспечение Windows 4 14-11-2007 11:40
Выскакивающая подсказка Himic Microsoft Windows 2000/XP 5 30-08-2006 13:59
Всплывающая подсказка Pawel gor Вебмастеру 4 12-10-2003 00:29




 
Переход