Piotr
Stanek
Programista PHP /
JS developer
Temat: strpos
mam takie zdanie:Kupując preparaty do włosów, mamy podany składnik. Często nie wiemy jak działają na nasze włosy, kierujemy się…ładnym zapachem, ceną. Jest to zła droga do pięknych włosów. Odżywka może pomóc, albo zaszkodzić, gdy nie będzie dobrze wybrana.
szukamy słowa Włos którego nie powinno odszukać (takich słów których szukamy jest dużo .... )
cała metoda wygląda tak
function scan_desc_tag($id,$parent)
{
echo $id."-".$parent;
echo "<BR>";
//zastepujemy
$db = new other_sql();
//Pobieram obramiany art
$desc .= $db->MysqlGetOne("SELECT html_max FROM `modules_desc` WHERE act=1 and parent='".$parent."' and id='".$id."' ");
$desc .= " ";
//tagi
$ctag = $db->MysqlGetOne("SELECT count(*) FROM `tag` WHERE act=1 and count!=0");
$atag = $db->sqlQuery("SELECT count,tag FROM `tag` WHERE act=1 and count!=0 and id !='2824' ORDER by count DESC ");
//tworzymy array z tagami ktore sa w tekscie 1 super tag 1 sredni.
while ($row = mysql_fetch_assoc($atag))
{
$matches = array();
preg_match_all('/(^|\b)' . $row['tag'] . '($|\b)/iu', $desc, $matches[$row['id']], PREG_OFFSET_CAPTURE);
if ($matches[$row['id'] ] [0][0][0] !='')
{
$tag_tmp[$row['tag']] = $row['tag'] ;
}
}
print '<PRE>';
print_r($tag_tmp);
print '</PRE>';
$array_max = array_splice($tag_tmp,0,1);
$array_min = array_rand($tag_tmp, 2);
$array_literal = array_values(array_merge_recursive($array_max,$array_min));
$desc1 = preg_replace('/('.$array_literal[0].')/i', '<a href="tag,'.str_replace(' ', '+',$array_literal[0]).'.html">$1</a>', $desc, 1);
$desc2 = preg_replace('/('.$array_literal[1].')/i', '<a href="tag,'.str_replace(' ', '+',$array_literal[1]).'.html">$1</a>', $desc1, 1);
$desc3 = preg_replace('/('.$array_literal[2].')/i', '<a href="tag,'.str_replace(' ', '+',$array_literal[2]).'.html">$1</a>', $desc2, 1);
return $desc3;
}
Jak printuje tag_tmp to mam tam
...
[Włos] => Włos
...
Wklejam tylko kawałek tekstu który przeszukuję... Ale np mam w nim też słowo Algi i też go szukam i tu znajduję i tak ma być ale słowa 'włos' nie może odnajdywać.
może źle korzystam z Twojego kodu.