vini_loock Posted December 6, 2012 Report Share Posted December 6, 2012 (edited) Salve pessoas,Estou precisando de alguma coisa que identifique tags não fechadas.A situação é a seguinte:Tenho um formulário para adicionar artigos;Nesse formulário há um campo "conteudo"(um textarea tiny mce);Este campo, poderá receber o famoso "leia mais", que nada mais é que um comentário html no campo conteúdo;No banco de dados, existem 2 campos para salvar o conteudo: introtext e fulltext;Na hora de salvar, dou um explode no comentário (<!--readmore-->);e salvo as partes em seus devidos lugares;O problema é que se por exemplo o comentário estiver dentro de uma tag p, quando eu mostrar no site apenas o introtext, terá um p sem fechamento.Este é o problema, estou sem nenhuma ideia por enquanto, se alguém tiver sugestões...Vlw, ViniciusEdit.. Só afim de exemplificar:Supomos que o conteudo que o usuário digitou no campo corresponda a isto:<p>primeira parte do texto</p> <p><!--readmore--></p> <p>segunda parte do texto</p> No banco, será salvo assim: introtext<p>primeira parte do texto</p> <p> fulltext</p> <p>segunda parte do texto</p> Edited December 6, 2012 by vini_loock Quote Link to comment Share on other sites More sharing options...
0 dedas Posted December 6, 2012 Report Share Posted December 6, 2012 E ae Vini, Bom dia :)Cara, acho que isso vai te ajudar ^^ Se tiver alguma dúvida, posta aqui.<?php //Você possui isso $conteudo = "<p>primeira parte do texto</p>" ."<p><!--readmore--></p>" ."<p>segunda parte do texto</p>"; //Quando vai salvar no banco, faz isso $conteudo = explode("<!--readmore-->",$conteudo); $introtext = $conteudo[0]; $fulltext = $conteudo[1]; //Correto ? Agora, você pode criar uma condição para verificar se existe uma tag p não fechada. if(preg_match("/\<[pP]\>$/",$introtext)){ $introtext = substr($introtext,0,-3); } if(preg_match("/^\<\/[pP]\>/",$fulltext)){ $fulltext = substr($fulltext,4); } echo $introtext." e ".$fulltext; ?> Quote Link to comment Share on other sites More sharing options...
0 vini_loock Posted December 6, 2012 Author Report Share Posted December 6, 2012 Ah, putz. Pensei em algo parecido mas não dei muita bola por pensar no caso de ter algo depois desta tag aberta, mas só agora com você falando que me toquei: o máximo que terá depois desta tag, seriam espaços, nada que um trim não resolva.Vlw Quote Link to comment Share on other sites More sharing options...
0 dedas Posted December 7, 2012 Report Share Posted December 7, 2012 Por nada :)Abraço ! Quote Link to comment Share on other sites More sharing options...
Question
vini_loock
Salve pessoas,
Estou precisando de alguma coisa que identifique tags não fechadas.
A situação é a seguinte:
Tenho um formulário para adicionar artigos;
Nesse formulário há um campo "conteudo"(um textarea tiny mce);
Este campo, poderá receber o famoso "leia mais", que nada mais é que um comentário html no campo conteúdo;
No banco de dados, existem 2 campos para salvar o conteudo: introtext e fulltext;
Na hora de salvar, dou um explode no comentário (<!--readmore-->);
e salvo as partes em seus devidos lugares;
O problema é que se por exemplo o comentário estiver dentro de uma tag p, quando eu mostrar no site apenas o introtext, terá um p sem fechamento.
Este é o problema, estou sem nenhuma ideia por enquanto, se alguém tiver sugestões...
Vlw, Vinicius
Edit..
Só afim de exemplificar:
Supomos que o conteudo que o usuário digitou no campo corresponda a isto:
No banco, será salvo assim: introtext fulltext Edited by vini_loockLink to comment
Share on other sites
3 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.