Amigo, levantando uma outra questão sobre seu caso, se tiver muitos
registros no banco e/ou textos grandes, não seria melhor utilizar a
busca full-text do mysql ao invés do like?
Em 26/11/10 09:00, Rafael V. de Oliveira escreveu:
Eric, foi mesmo o teu código que ajudou-me imenso!!!
Só tive que fazer algumas modificações, simples, mas tive que fazer.
$range= 33;
$posInit= strpos( $row->text, $search);
$str= $row->text;
if ( $posInit> $range)
$str= '...'.substr( $row->text, $posInit- $range);
Muitas vezes o texto procurado pode estar no começo da string, então
tenho que colocar dentro do if, senão ele acaba por fazer um substr
negativo ($posInit - $range).
E também cortei o terceiro parametro do substr uma vez que na view eu
já tenho um word_limiter.
Mesmo assim, depois envio-te um vinho do Porto.
O pastelzinho eu tenho que dar um pulo em Lisboa para comprar. Com o
frio que está deve demorar um bocado.
Ponho no anexo do e-mail, pode ser?
Abraços e desculpa, quando cheguei em casa percebi que era um problema
mais da peça entre o monitor e a cadeira do que qualquer outra coisa.
Preguiça de pensar, mil perdões.
Rafael.
Em 2010/11/25, às 20:51, Eric Saboia escreveu:
http://pastebin.com/zjVGuVqj
Abraços,
2010/11/25 Rafael V. de Oliveira <[email protected]
<mailto:[email protected]>>
Caros senhores, senhoras e simpatizantes.
Gostaria de pedir uma ajuda vossa.
Usando o seguinte exemplo:
Na minha base de dados (MySQL 4.0) tenho a seguinte estrutura
*id (int)**texto (text)*
/1/"/Era uma vez, num reino muito distante, mais conhecido como
Embu-guaçu, existia um jovem aspirante a vendedor de caquis, que
gritava sempre: 'Cabô caqui' "/
Muito bem, eu tenho um sistema que faz uma busca da seguinte forma:
$this->db->select('texto');
$this->db->like('texto', 'caquis');
return$this->db->get('minha_tabela');
Neste caso, eu vou achar, pois dentro do campo '/texto/' existe o
termo '/caquis/'. E vou exibir este registro numa view, porém não
exibo o texto completo, apenas uma parte dele, assim ó:
echoword_limiter( highlight_phrase($texto, $procura, '<span
class="encontrado">', '</span>'), 10);
Esta instrução corta o texto em 10 palavras e o termo procurado
($procura) fica entre tags <span> com uma class encontrado.
*O retorno é este:*
/Era uma vez, num reino muito distante, mais conhecido como..../
*O que eu queria era uma coisa assim:*
/... um jovem aspirante a vendedor de <span
class="encontrado">caquis</span>, que gritava sempre:..../
Gostaria de uma ajuda em como retirar um extrato do texto
encontrado, mas na posição em que o termo ('/caquis/') se encontra.
Quem precisar de um incentivo, arranjo um vinho do Porto e um
pastel de Belém (de Belém mesmo e não do Habibs) pra quem ajudar.
Ou para os Calcutás da vida, eu dou meu sincero muitíssimo obrigado.
PS: Se não fui claro, posso tentar ser mais específico ^_^
Abraços,
Rafael V. de Oliveira
_______________________________________________
[email protected] <mailto:[email protected]>
http://www.codeigniter.com.br <http://www.codeigniter.com.br/>
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net <http://www.franquiasargohost.net/>
---------------------------
--
Eric Saboia - eric.saboia.org <http://eric.saboia.org/>
Beautiful is better than ugly,
Explicit is better than implicit,
Simple is better than complex,
Complex is better than complicated.
The Zen of Python, by Tim Peters
_______________________________________________
[email protected] <mailto:[email protected]>
http://www.codeigniter.com.br
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------
_______________________________________________
[email protected]
http://www.codeigniter.com.br
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------
_______________________________________________
[email protected]
http://www.codeigniter.com.br
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------