У меня есть клиент, который хочет управлять его названиями/описаниями SEO для любой страницы на веб-сайте, поэтому я подумал о создании модуля, где он может ввести URL/TITLE/DESCRIPTION и сайт будет проверять, есть ли запись для этой страницы, и если есть, покажите ее.MySQL/PHP полнотекстовый поиск 1 слово сходство
Я попытался это:
$url = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
$q_seo = $conexio->query('SELECT modulseo.titol, modulseo.descripcio, MATCH(modulseo.url) AGAINST("'.$url.'") AS score FROM modulseo WHERE MATCH(modulseo.url) AGAINST("'.$url.'") ORDER BY score DESC LIMIT 0,1');
if(mysql_num_rows($q_seo)>0)
{
$d_seo = mysql_fetch_array($q_seo);
$titol = $d_seo['titol'];
$descripcio = $d_seo['descripcio'];
}
else
{
$titol = 'default title';
$descripcio = 'default description';
}
Это, очевидно, не работает, как я считаю, полнотекстовой поиск работает только с соответствующим разными словами, а не сходством между 1 словом и другим, так как клиент может войти в бэкэнд URLs нравится:
http://www.domain.com/index.php
- или
http://domain.com/index.php
- или
http://www.domain.com/index.php?language=fr
- или
http://domain.com/index.php?language=fr
- и т.д ..
, а затем пользователь сайта может получить доступ к любому из этих адресов, так что должен быть способ, чтобы соответствовать любому из URL-адресов с любым из них клиент включен в бэкэнд.
Любая подсказка о том, как это сделать?
почему вы не используете 'like', чтобы сделать поиск ?? – jcho360