Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou desenvolvendo um sistema no qual irão conter noticias para Web, porém sem catedorias.
A minha tarefa é ler cada mensagem (1.235) e determinar segundo as categorias escolhidas pela chefe
quais as mensagem que se enquadram nas categorias, para isso necessito desenvolver um sql para ler a noticia e e verificar o contexto da mesma. Alguém poderia informar por onde começo ?
O google usa um engine semelhante para pesquisar as noticias sobre determinado contexto.
A questão na minha humilde opinião é ler a string palavra por palavra e determinar se elas pertence ao contexto
na qual mereça uma categoria.
a menos que voce coloque o texto da noticia em um array de strings
e coloque uma condicao tipo se dentro do array tiver a palavra moda e beleza e cuidados pessoais
entao coloca a mensagem na categoria moda,
ou seja ao inserir a noticia ela vai nome da noticia e texto (o texto é um tipo array, tem como por arrays no banco pq eu ja fiz )
ai trazendo do banco
vc coloca um while pra trazer do banco logo uma query pra determinar que só venha uma por vez
e dentro do while um for pra percorrer o texto
e dentro do for pra ver se tem as palavras que determinarão a categoria
um if pra cada categoria
espero ter ajudado pelo menos na lógica de como fazer pra começar
uma solução prática seria a lógica do post #4.
Na prática, criaria um campo chamado category_id com valor padrão NULL
então basta aplicar o UPDATE com as buscas:
UPDATE tabela SET category_id = 1 WHERE field REGEXP 'moda|beleza|cosmeticos' AND category_id IS NULL;
Daí basta trocar os IDs das categorias com suas respectivas palavras-chave
Outra forma mais recomendável é modelar uma estrutura que permita um texto entrar em mais de uma categoria
Então teria que criar uma tabela para relacionar os IDs dos artigos e IDs de categorias
article_categories
id (unique)
article_id
category_id
Nesse caso, a query de UPDATE, acima, precisaria incrementar subqueries.
melhorando o código .....
em cada if de categoria uma variavel chamada
categoria receberia o nome da categoria
e então no final dos if sem por else
if (categoria == moda){
sql = mysql_query = insert into tabela (camponomedacategoria, conteudo ) values ('categoria', 'textodapagina');
}
if (categoria == esportes){
sql2 = mysql_query = insert into tabela (camponomedacategoria, conteudo ) values ('categoria', 'textodapagina');
}Não há necessidade em usar PHP... pode ser feito tudo no SQL mesmo.
Não há necessidade em usar PHP... pode ser feito tudo no SQL mesmo.
Como seria usando somente SQL ? Por favor poderia informar a logica utilizando somente as querys ?
>
melhorando o código .....
em cada if de categoria uma variavel chamada
categoria receberia o nome da categoria
e então no final dos if sem por else
if (categoria == moda){
sql = mysql_query = insert into tabela (camponomedacategoria, conteudo ) values ('categoria', 'textodapagina');
}
if (categoria == esportes){
sql2 = mysql_query = insert into tabela (camponomedacategoria, conteudo ) values ('categoria', 'textodapagina');
}
Vou testar aqui no sistema e logo informo o resultado.
no post #5..
Amigo se for mesmo oq eu entendi, isso é impossível de fazer, vc terá que ler as mensagens manualmente e categorizar.