PHP valores separados por virgulas - Versão de Impressão +- Forum Pplware (http://forum.pplware.com) +-- Fórum: Mais Tech (/forumdisplay.php?fid=11) +--- Fórum: Programação e Web (/forumdisplay.php?fid=16) +--- Tópico: PHP valores separados por virgulas (/showthread.php?tid=8009) |
PHP valores separados por virgulas - mpmont - 15-12-2010 16:52 Boa tarde, cá estou eu mais uma vez a pedir ajuda =) então é assim eu tou a construir um pequeno cms, e nele queria incluir um sistema de tags, assim quando o utilizador cria um novo artigo adiciona as tags separando palavras por virgulas ex: atitude, controlo, destreza, estudo depois eu quando guardo o artigo tenho um campo na base de dados chamado tags onde guardo os valores. o meu problema é depois ir buscar la os valores separados por virgulas, ou seja, como é que eu transformo a string devolvida pela base de dados num objecto com todas as tags? já agora se tiverem alguma sugestão em como criar um bom sistema de tags, caso a minha linha de pensamento não ser a mais correcta estou aberto a sugestões como é óbvio =) cumprimentos =) RE: PHP valores separados por virgulas - Bruno Bernardino - 15-12-2010 17:15 O ideal é teres uma tabela com as tags existentes (onde crias quando não existe) do tipo: Código: tags: id (int, primary, auto-increment), tag (varchar(80), total (int, default 1) Depois outra: Código: tags_objects: id (int, primary, auto-increment), tag (int), object (int) (criar um unique index com tag e object) Depois terás uma função do tipo addTag('nomedatag') que irá adicionar ou actualizar valores na primeira tabela, algo como: Código: function addTag($tag) { De seguida, outra função, a que vais aplicar para "taggar" uma tag a um objecto, ex. addTag2Object('tag',1), do tipo: Código: function addTag2Object($tag,$object) { Agora, finalmente o que pediste especificamente, uma função que pegue na string separada por vírgulas e que chame as funções acima, ex. tagObject('tag, tag2,tag3 ,tag4',1), do tipo: Código: function tagObject($tags,$object) { Faltam imensas verificações e tal, mas fiz isso agora de cabeça, deve ser mais que suficiente. Se precisares de taggar vários objectos diferentes (posts, comentários, páginas, etc.) convém adicionares na segunda tabela um type (int) e respectivamente nas funções. RE: PHP valores separados por virgulas - mpmont - 15-12-2010 18:05 boa =) chega perfeitamente para continuar =) |