Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

italoborges

Problemas com quebra de linha.

Recommended Posts

E ai pessoal, tudo blza?

 

Tenho o seguinte problema que não consigo resolver:

 

Tenho um campo input, onde o usuário digita um texto (multiline) e envia para o banco.

É como se fosse um adm para atualização de novidades.

Depois que ele insere, este texto volta para o Flash por meio de um XML.

E quando ele volta, ele volta sem as quebras de linha que eu dei no campo de texto.

 

No banco eu uso long text.

 

Alguém sabe o porque disso e como posso contornar?

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, eu normalmente utilizo a seguinte função em php para tratar textos que vem do banco e vão ser exibidos no flash:

 

<?
function texto_flash($texto){
	$texto = str_replace("%","%25",$texto);
	$texto = str_replace("&","%26",$texto);
	$texto = str_replace("+","%2B",$texto);
	
	$teste = explode("\n",$texto);
	$texto = "";
	for($x=0;$x<count($teste);$x++){
		$texto.= $teste[$x];
	}
	
	return $texto;
	}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

No caso, essa função verifica se há quebras de linha e na hora de gerar o xml você joga o texto para função, retornando o texto modificado?

 

Poderia explicar o que são %25, %26 e %2B no str_replace?

 

Valeu pela ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso, você passa seu texto vindo do banco e ja é retornado o texto tratado.

No caso, "%", "&", "+", são convertidos para seus respectivos códigos html, evitando assim bugs quando for inserido um texto no banco contendo esses carecteres.

Utilizo essa função para tratar textos que serão salvos no banco e textos que são pegos do banco.

^_^

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo Alan, entendi.

Mas e no caso de neste texto que eu envio não conter nenhuma tag html?

 

Pois é enviado o tem no meu campo input que o usuário digitou.

 

Exemplos:

 

Texto enviado:

 

Lorem Ipsum is simply dummy text of the printing and typesetting industry.

Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,

when an unknown printer took a galley of type and scrambled it to

make a type specimen book.

Texto retornado para o Flash:

 

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.

Acredito que não tenha tag html para ele dar o replace.

 

Valeu pela ajuda novamente!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dependendo do jeito que você estiver fazendo suas consultas se houver no texto o caracter "&", ocorrerá algum problema. Que era o meu caso.

Faça o teste, insira no texto caracteres como "&" e "+".

Isso vai da forma de que cada um trata as consultas e os retornos.

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.